diff --git a/build-spring-webflow/package-artifact.xml b/build-spring-webflow/package-artifact.xml index 2719a7f0..bbc77938 100644 --- a/build-spring-webflow/package-artifact.xml +++ b/build-spring-webflow/package-artifact.xml @@ -31,7 +31,7 @@ + dest="${main.output.dir}/META-INF/web-resources"/> @@ -80,8 +80,8 @@ - - + + diff --git a/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java b/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java index 98dc2aff..fbf1734e 100644 --- a/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java +++ b/spring-js/src/main/java/org/springframework/js/resource/ResourceServlet.java @@ -65,6 +65,8 @@ public class ResourceServlet extends HttpServletBean { private String jarPathPrefix = "META-INF"; + private String springJsJarPathPrefix = "META-INF/web-resources"; + private boolean gzipEnabled = true; private Set allowedResourcePaths = new HashSet(); @@ -254,22 +256,10 @@ public class ResourceServlet extends HttpServletBean { } URL resource = getServletContext().getResource(localResourcePath); if (resource == null) { - String jarResourcePath = jarPathPrefix + localResourcePath; - if (!isAllowed(jarResourcePath)) { - if (log.isWarnEnabled()) { - log - .warn("An attempt to access a protected resource at " + jarResourcePath - + " was disallowed."); - } - return null; - } - if (jarResourcePath.startsWith("/")) { - jarResourcePath = jarResourcePath.substring(1); - } - if (log.isDebugEnabled()) { - log.debug("Searching classpath for resource: " + jarResourcePath); - } - resource = ClassUtils.getDefaultClassLoader().getResource(jarResourcePath); + resource = getJarResource(springJsJarPathPrefix, localResourcePath); + } + if (resource == null) { + resource = getJarResource(jarPathPrefix, localResourcePath); } if (resource == null) { if (resources.length > 1) { @@ -283,6 +273,23 @@ public class ResourceServlet extends HttpServletBean { return resources; } + private URL getJarResource(String jarPrefix, String resourcePath) { + String jarResourcePath = jarPrefix + resourcePath; + if (!isAllowed(jarResourcePath)) { + if (log.isWarnEnabled()) { + log.warn("An attempt to access a protected resource at " + jarResourcePath + " was disallowed."); + } + return null; + } + if (jarResourcePath.startsWith("/")) { + jarResourcePath = jarResourcePath.substring(1); + } + if (log.isDebugEnabled()) { + log.debug("Searching classpath for resource: " + jarResourcePath); + } + return ClassUtils.getDefaultClassLoader().getResource(jarResourcePath); + } + private boolean isAllowed(String resourcePath) { if (resourcePath.matches(protectedPath)) { return false; diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/forms.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/forms.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/forms.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/forms.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-1col.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-1col.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-1col.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-1col.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-navleft-1col.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navleft-1col.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-navleft-1col.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navleft-1col.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-navleft-2col.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navleft-2col.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-navleft-2col.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navleft-2col.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-1col.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-1col.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-1col.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-1col.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-3col.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-3col.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-3col.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-3col.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-localleft.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-localleft.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-localleft.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-localleft.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-subright.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-subright.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout-navtop-subright.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout-navtop-subright.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/layout.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/layout.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/layout.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/nav-horizontal.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/nav-horizontal.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/nav-horizontal.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/nav-horizontal.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/nav-vertical.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/nav-vertical.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/nav-vertical.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/nav-vertical.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/tools.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/tools.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/tools.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/tools.css diff --git a/spring-js/src/main/resources/META-INF/css-framework/css/typo.css b/spring-js/src/main/resources/META-INF/web-resources/css-framework/css/typo.css similarity index 100% rename from spring-js/src/main/resources/META-INF/css-framework/css/typo.css rename to spring-js/src/main/resources/META-INF/web-resources/css-framework/css/typo.css diff --git a/spring-js/src/main/resources/META-INF/spring/Spring-Dojo.js b/spring-js/src/main/resources/META-INF/web-resources/spring/Spring-Dojo.js similarity index 100% rename from spring-js/src/main/resources/META-INF/spring/Spring-Dojo.js rename to spring-js/src/main/resources/META-INF/web-resources/spring/Spring-Dojo.js diff --git a/spring-js/src/main/resources/META-INF/spring/Spring.js b/spring-js/src/main/resources/META-INF/web-resources/spring/Spring.js similarity index 100% rename from spring-js/src/main/resources/META-INF/spring/Spring.js rename to spring-js/src/main/resources/META-INF/web-resources/spring/Spring.js