diff --git a/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java b/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java
index 202ab2ec4357961c7d542bdae613eba26d35a4fc..4031741b077e26d2beb795750d9e099ce47a1c9a 100644
--- a/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java
+++ b/forwarder/src/main/java/de/ozgcloud/eingang/forwarder/EingangStubReceiverStreamObserver.java
@@ -172,7 +172,7 @@ public class EingangStubReceiverStreamObserver implements StreamObserver<GrpcRou
 	}
 
 	@Override
-	public void onError(Throwable t) {
+	public synchronized void onError(Throwable t) {
 		LOG.error("Error happened. Receiving stream closed.", t);
 		closeOutputPipe();
 		closeInputPipe();
@@ -187,7 +187,7 @@ public class EingangStubReceiverStreamObserver implements StreamObserver<GrpcRou
 	}
 
 	@Override
-	public void onCompleted() {
+	public synchronized void onCompleted() {
 		formDataConsumer.accept(assembleFormData());
 		responseConsumer.accept(GrpcRouteForwardingResponse.getDefaultInstance());
 	}