From 24a746c5d83cb3d81733a6af84eed2cf3678c08a Mon Sep 17 00:00:00 2001 From: Nick Burch Date: Thu, 30 Jun 2011 10:31:12 +0000 Subject: [PATCH] When loading JS includes with a full classpath reference, handle the Eclipse classloader behaving slightly differently on absolute paths compared to the JVM one git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@28716 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/repo/jscript/RhinoScriptProcessor.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/java/org/alfresco/repo/jscript/RhinoScriptProcessor.java b/source/java/org/alfresco/repo/jscript/RhinoScriptProcessor.java index 4898ad767f..33e5894091 100644 --- a/source/java/org/alfresco/repo/jscript/RhinoScriptProcessor.java +++ b/source/java/org/alfresco/repo/jscript/RhinoScriptProcessor.java @@ -320,9 +320,14 @@ public class RhinoScriptProcessor extends BaseProcessor implements ScriptProcess { try { - // load from classpath + // Load from classpath String scriptClasspath = resource.substring(PATH_CLASSPATH.length()); URL scriptResource = getClass().getClassLoader().getResource(scriptClasspath); + if (scriptResource == null && scriptClasspath.startsWith("/")) + { + // The Eclipse classloader prefers alfresco/foo to /alfresco/foo, try that + scriptResource = getClass().getClassLoader().getResource(scriptClasspath.substring(1)); + } if (scriptResource == null) { throw new AlfrescoRuntimeException("Unable to locate included script classpath resource: " + resource);