diff options
author | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2010-07-16 17:49:10 +0000 |
---|---|---|
committer | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2010-07-16 17:49:10 +0000 |
commit | 63cc1a8c2eb2116ce449456bde19ff6e282163df (patch) | |
tree | b9f60a01c8642416c9d2121ef558e920a712675e /sca-java-2.x/trunk/modules | |
parent | 06891b50bded21d24be8abce7cbd5035f2bb6e61 (diff) |
Fix for TUSCANY-3622
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@964879 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
2 files changed, 11 insertions, 2 deletions
diff --git a/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java b/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java index 65af22c3e7..e25bd4206b 100644 --- a/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java +++ b/sca-java-2.x/trunk/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java @@ -269,7 +269,10 @@ public class EndpointImpl implements Endpoint { names[2] = parts[1]; } else if (str.startsWith("service(") && str.endsWith(")")) { str = str.substring("service(".length(), str.length() - 1); - names[1] = str; + // [rfeng] Deal with empty service name + if (!"".equals(str)) { + names[1] = str; + } } else { throw new IllegalArgumentException("Invalid structural URI: " + structuralURI); } diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java index 4688bea66f..0b6b93edc0 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java @@ -93,7 +93,13 @@ public abstract class BaseEndpointRegistry implements EndpointRegistry, LifeCycl if (endpointReference.getReference() != null) { Endpoint targetEndpoint = endpointReference.getTargetEndpoint(); - return findEndpoint(targetEndpoint.getURI()); + String uri = targetEndpoint.getURI(); + // [rfeng] This is a workaround to deal with the case that the endpoint URI doesn't have the + // service name to avoid confusion between structural URIs and service URIs + if (uri.indexOf('#') == -1) { + uri = uri + "#service()"; + } + return findEndpoint(uri); } return new ArrayList<Endpoint>(); |