diff options
Diffstat (limited to 'java/sca/modules/binding-ws-axis2/src/main')
2 files changed, 7 insertions, 4 deletions
diff --git a/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2BindingInvoker.java b/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2BindingInvoker.java index 0f8ce0a600..46c97e7553 100644 --- a/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2BindingInvoker.java +++ b/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2BindingInvoker.java @@ -251,7 +251,7 @@ public class Axis2BindingInvoker implements Invoker, DataExchangeSemantics { // add WS-Addressing header //FIXME: is there any way to use the Axis2 addressing support for this? if (callbackEndpoint != null) { - EndpointReference fromEPR = new EndpointReference(callbackEndpoint.getBinding().getURI()); + EndpointReference fromEPR = new EndpointReference(callbackEndpoint.getURI()); SOAPEnvelope sev = requestMC.getEnvelope(); SOAPHeader sh = sev.getHeader(); OMElement epr = diff --git a/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceProvider.java b/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceProvider.java index 780c11a577..cd3a6b38b8 100644 --- a/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceProvider.java +++ b/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/Axis2ServiceProvider.java @@ -806,14 +806,17 @@ public class Axis2ServiceProvider { //fill message with QoS context info fillQoSContext(msg, inMC); - // if reference parameters are needed, create a new "From" EPR to hold them + // Create a from EPR to hold the details of the callback endpoint EndpointReference from = null; if (callbackAddress != null ) { from = assemblyFactory.createEndpointReference(); Endpoint fromEndpoint = assemblyFactory.createEndpoint(); from.setTargetEndpoint(fromEndpoint); - // TODO - EPR - need to set callback address - msg.setFrom(from); + msg.setFrom(from); + Endpoint callbackEndpoint = assemblyFactory.createEndpoint(); + callbackEndpoint.setURI(callbackAddress); + callbackEndpoint.setUnresolved(true); + from.setCallbackEndpoint(callbackEndpoint); } /* TODO - EPR - not required in OASIS |