diff options
-rw-r--r-- | sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java index bdacdda53b..2d87e50ed0 100644 --- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java +++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java @@ -605,13 +605,10 @@ public class RuntimeEndpointImpl extends EndpointImpl implements RuntimeEndpoint } } - - // Add the runtime invoker to the end of the binding chain. - // It mediates between the binding chain and selects the - // correct invocation chain based on the operation that's - // been selected - bindingInvocationChain.addInvoker(invoker); + // This is strategically placed before the RuntimeInvoker is added to the end of the + // binding chain as the RuntimeInvoker doesn't need to take part in the response + // processing and doesn't implement InvokerAsyncResponse if (isAsyncInvocation()){ // fix up the invocation chains to point back to the // binding chain so that async response messages @@ -641,6 +638,12 @@ public class RuntimeEndpointImpl extends EndpointImpl implements RuntimeEndpoint //TODO - throw error once the old async code is removed } } + + // Add the runtime invoker to the end of the binding chain. + // It mediates between the binding chain and selects the + // correct invocation chain based on the operation that's + // been selected + bindingInvocationChain.addInvoker(invoker); } /** |