diff options
author | edwardsmj <edwardsmj@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-15 08:35:30 +0000 |
---|---|---|
committer | edwardsmj <edwardsmj@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-15 08:35:30 +0000 |
commit | 7a462a1eb14fcd883f09550310a160e0732800fb (patch) | |
tree | 1510897585a10b21a522638833d7a29e24c8e1df /java | |
parent | d34795f0b896f5913440841aedddf21dfddf84bd (diff) |
Make the ODE service name for each BPEL process service unique by prepending the SCA Component URI to the SCA service name - to avoid a single service invocation causing multiple BPEL processes to get dispatched - TUSCANY-3144
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@794181 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
-rw-r--r-- | java/sca/modules/implementation-bpel-runtime/src/main/java/org/apache/tuscany/sca/implementation/bpel/ode/provider/BPELInvoker.java | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/java/sca/modules/implementation-bpel-runtime/src/main/java/org/apache/tuscany/sca/implementation/bpel/ode/provider/BPELInvoker.java b/java/sca/modules/implementation-bpel-runtime/src/main/java/org/apache/tuscany/sca/implementation/bpel/ode/provider/BPELInvoker.java index 2562d6b52b..d3c743d551 100644 --- a/java/sca/modules/implementation-bpel-runtime/src/main/java/org/apache/tuscany/sca/implementation/bpel/ode/provider/BPELInvoker.java +++ b/java/sca/modules/implementation-bpel-runtime/src/main/java/org/apache/tuscany/sca/implementation/bpel/ode/provider/BPELInvoker.java @@ -61,14 +61,16 @@ public class BPELInvoker implements Invoker { private TransactionManager txMgr; private RuntimeComponentService service; - private Operation operation; - private QName bpelServiceName; - private String bpelOperationName; - private Part bpelOperationInputPart; - private Part bpelOperationOutputPart; + private Operation operation; + private QName bpelServiceName; + private String bpelOperationName; + private Part bpelOperationInputPart; + private Part bpelOperationOutputPart; + private RuntimeComponent component; public BPELInvoker(RuntimeComponent component, RuntimeComponentService service, Operation operation, EmbeddedODEServer odeServer, TransactionManager txMgr) { this.service = service; + this.component = component; this.operation = operation; this.bpelOperationName = operation.getName(); this.odeServer = odeServer; @@ -91,8 +93,9 @@ public class BPELInvoker implements Invoker { // Service serviceDefinition = (Service) wsdlInterface.getWsdlDefinition().getDefinition().getAllServices().values().iterator().next(); // bpelServiceName = serviceDefinition.getQName(); // - // Fetch the service name from the service object - bpelServiceName = new QName( "http://tuscany.apache.org", service.getName() ); + // Fetch the service name from the service object - including the componentURI guarantees a unique service name + String componentURI = component.getURI(); + bpelServiceName = new QName( "http://tuscany.apache.org", componentURI + service.getName() ); bpelOperationInputPart = (Part) wsdlInterface.getPortType().getOperation(bpelOperationName,null,null).getInput().getMessage().getParts().values().iterator().next(); bpelOperationOutputPart = (Part) wsdlInterface.getPortType().getOperation(bpelOperationName,null,null).getOutput().getMessage().getParts().values().iterator().next(); |