diff options
Diffstat (limited to 'java/sca/modules/node-api')
-rw-r--r-- | java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/ContributionLocationHelper.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/ContributionLocationHelper.java b/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/ContributionLocationHelper.java index f891f1e329..2e73322917 100644 --- a/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/ContributionLocationHelper.java +++ b/java/sca/modules/node-api/src/main/java/org/apache/tuscany/sca/node/ContributionLocationHelper.java @@ -127,6 +127,12 @@ public class ContributionLocationHelper { } else if ("jar".equals(protocol) || "wsjar".equals(protocol) || "zip".equals(protocol)) { // jar contribution location = url.substring(protocol.length() + 1, url.lastIndexOf("!/")); + } else if (url.endsWith(resourceName)) { + location = url.substring(0, url.lastIndexOf(resourceName)); + } else { + throw new IllegalArgumentException("The root of the resource cannot be determined: " + resourceURL + + "," + + resourceName); } return location; } |