WW-4055 Reverts commit dfb2bd3

Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/64234907
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/64234907
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/64234907

Branch: refs/heads/master
Commit: 64234907c6e766bc14283ce5fef59e073276ffe2
Parents: da4a220
Author: Lukasz Lenart <lukaszlen...@apache.org>
Authored: Tue Dec 30 09:23:23 2014 +0100
Committer: Lukasz Lenart <lukaszlen...@apache.org>
Committed: Tue Dec 30 09:23:23 2014 +0100

----------------------------------------------------------------------
 .../PackageBasedActionConfigBuilder.java        | 54 +++++++++++---------
 1 file changed, 31 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/64234907/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
----------------------------------------------------------------------
diff --git 
a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
 
b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
index 811df83..d1ad0c0 100644
--- 
a/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
+++ 
b/plugins/convention/src/main/java/org/apache/struts2/convention/PackageBasedActionConfigBuilder.java
@@ -94,7 +94,7 @@ public class PackageBasedActionConfigBuilder implements 
ActionConfigBuilder {
     private String[] actionPackages;
     private String[] excludePackages;
     private String[] packageLocators;
-    private String[] includeJars = new String[] { ".*?\\.jar(!/|/)?" };
+    private String[] includeJars;
     private String packageLocatorsBasePackage;
     private boolean disableActionScanning = false;
     private boolean disablePackageLocatorsScanning = false;
@@ -475,35 +475,43 @@ public class PackageBasedActionConfigBuilder implements 
ActionConfigBuilder {
         urlSet = urlSet.excludePaths(System.getProperty("sun.boot.class.path", 
""));
         urlSet = urlSet.exclude(".*/JavaVM.framework/.*");
 
-        List<URL> rawIncludedUrls = urlSet.getUrls();
-        Set<URL> includeUrls = new HashSet<URL>();
-        boolean[] patternUsed = new boolean[includeJars.length];
-
-        for (URL url : rawIncludedUrls) {
-            if (fileProtocols.contains(url.getProtocol())) {
-                //it is a jar file, make sure it macthes at least a url regex
-                for (int i = 0; i < includeJars.length; i++) {
-                    String includeJar = includeJars[i];
-                    if (Pattern.matches(includeJar, url.toExternalForm())) {
-                        includeUrls.add(url);
-                        patternUsed[i] = true;
-                        break;
+        if (includeJars == null) {
+            urlSet = urlSet.exclude(".*?\\.jar(!/|/)?");
+        } else {
+            LOG.debug("jar urls regexes were specified: #0", 
Arrays.asList(includeJars));
+
+            List<URL> rawIncludedUrls = urlSet.getUrls();
+            Set<URL> includeUrls = new HashSet<URL>();
+            boolean[] patternUsed = new boolean[includeJars.length];
+
+            for (URL url : rawIncludedUrls) {
+                if (fileProtocols.contains(url.getProtocol())) {
+                    //it is a jar file, make sure it macthes at least a url 
regex
+                    for (int i = 0; i < includeJars.length; i++) {
+                        String includeJar = includeJars[i];
+                        if (Pattern.matches(includeJar, url.toExternalForm())) 
{
+                            includeUrls.add(url);
+                            patternUsed[i] = true;
+                            break;
+                        }
                     }
+                } else {
+                    LOG.debug("It is not a jar [#0]", url);
+                    includeUrls.add(url);
                 }
-            } else {
-                //it is not a jar
-                includeUrls.add(url);
             }
-        }
 
-        if (LOG.isWarnEnabled()) {
-            for (int i = 0; i < patternUsed.length; i++) {
-                if (!patternUsed[i]) {
-                    LOG.warn("The includeJars pattern [#0] did not match any 
jars in the classpath", includeJars[i]);
+            if (LOG.isWarnEnabled()) {
+                for (int i = 0; i < patternUsed.length; i++) {
+                    if (!patternUsed[i]) {
+                        LOG.warn("The includeJars pattern [#0] did not match 
any jars in the classpath", includeJars[i]);
+                    }
                 }
             }
+            return new UrlSet(includeUrls);
         }
-        return new UrlSet(includeUrls);
+
+        return urlSet;
     }
 
     /**

Reply via email to