You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2015/04/10 16:20:08 UTC

tomee git commit: few more integration with jsf 1 - tolerating owb-jsf12 module + filtering myfaces taglib if jsf is provided

Repository: tomee
Updated Branches:
  refs/heads/master f71923445 -> 924b428a3


few more integration with jsf 1 - tolerating owb-jsf12 module + filtering myfaces taglib if jsf is provided


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

Branch: refs/heads/master
Commit: 924b428a33b593c3601496d8a557a9069bb1cd08
Parents: f719234
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Fri Apr 10 16:20:02 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Fri Apr 10 16:20:02 2015 +0200

----------------------------------------------------------------------
 .../catalina/TomEEClassLoaderEnricher.java      |  1 +
 .../tomee/catalina/TomEEWebappClassLoader.java  |  2 +-
 .../apache/tomee/jasper/TomEETldScanner.java    | 24 ++++++++++++++++----
 .../java/org/apache/tomee/installer/Paths.java  |  2 +-
 4 files changed, 22 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/924b428a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEClassLoaderEnricher.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEClassLoaderEnricher.java b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEClassLoaderEnricher.java
index 98a9c69..cb1ab97 100644
--- a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEClassLoaderEnricher.java
+++ b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEClassLoaderEnricher.java
@@ -53,6 +53,7 @@ public final class TomEEClassLoaderEnricher implements WebAppEnricher {
 
     private static final String[] DEFAULT_PREFIXES_TO_ADD = new String[]{
             "openwebbeans-jsf", // to be able to provide jsf impl
+            "openwebbeans-jsf12", // if replaces previous one we need to handle it properly, note: not included by default
             "tomee-mojarra",
             "tomee-myfaces", // to be able to embedded myfaces in the webapp
             "openejb-jpa-integration" // to be able to embedded hibernate, eclipselinks....

http://git-wip-us.apache.org/repos/asf/tomee/blob/924b428a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEWebappClassLoader.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEWebappClassLoader.java b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEWebappClassLoader.java
index 466d80d..9930946 100644
--- a/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEWebappClassLoader.java
+++ b/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomEEWebappClassLoader.java
@@ -166,7 +166,7 @@ public class TomEEWebappClassLoader extends ParallelWebappClassLoader {
                     return super.loadClass(name, resolve);
                 }
             }
-        } else if (name.startsWith("javax.faces.") || name.startsWith("org.apache.webbeans.jsf.")) {
+        } else if (name.startsWith("javax.faces.") || name.startsWith("org.apache.webbeans.jsf")) {
             synchronized (this) {
                 delegate = false;
                 try {

http://git-wip-us.apache.org/repos/asf/tomee/blob/924b428a/tomee/tomee-catalina/src/main/java/org/apache/tomee/jasper/TomEETldScanner.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-catalina/src/main/java/org/apache/tomee/jasper/TomEETldScanner.java b/tomee/tomee-catalina/src/main/java/org/apache/tomee/jasper/TomEETldScanner.java
index 14c2d1b..f53b605 100644
--- a/tomee/tomee-catalina/src/main/java/org/apache/tomee/jasper/TomEETldScanner.java
+++ b/tomee/tomee-catalina/src/main/java/org/apache/tomee/jasper/TomEETldScanner.java
@@ -17,6 +17,7 @@
 package org.apache.tomee.jasper;
 
 import org.apache.jasper.servlet.TldScanner;
+import org.apache.openejb.util.classloader.URLClassLoaderFirst;
 import org.apache.openejb.util.reflection.Reflections;
 import org.apache.tomcat.util.descriptor.tld.TagXml;
 import org.apache.tomcat.util.descriptor.tld.TaglibXml;
@@ -24,12 +25,12 @@ import org.apache.tomcat.util.descriptor.tld.TldResourcePath;
 import org.apache.tomcat.util.descriptor.tld.ValidatorXml;
 import org.apache.tomee.installer.Paths;
 
-import javax.servlet.ServletContext;
-import javax.servlet.jsp.tagext.FunctionInfo;
-import javax.servlet.jsp.tagext.TagAttributeInfo;
 import java.net.URL;
 import java.util.HashMap;
 import java.util.Map;
+import javax.servlet.ServletContext;
+import javax.servlet.jsp.tagext.FunctionInfo;
+import javax.servlet.jsp.tagext.TagAttributeInfo;
 
 @SuppressWarnings("PMD") // this is generated so we don't really care
 public class TomEETldScanner extends TldScanner {
@@ -56,8 +57,21 @@ public class TomEETldScanner extends TldScanner {
     @Override
     protected void scanPlatform() {
         super.scanPlatform();
-        uriTldResourcePathMapParent.putAll(URI_TLD_RESOURCE);
-        tldResourcePathTaglibXmlMapParent.putAll(TLD_RESOURCE_TAG_LIB);
+        if (URLClassLoaderFirst.shouldSkipJsf(Thread.currentThread().getContextClassLoader(), "javax.faces.FactoryFinder")) {
+            uriTldResourcePathMapParent.putAll(URI_TLD_RESOURCE);
+            tldResourcePathTaglibXmlMapParent.putAll(TLD_RESOURCE_TAG_LIB);
+        } else { // exclude myfaces
+            for (final Map.Entry<String, TldResourcePath> entry : URI_TLD_RESOURCE.entrySet()) {
+                final TldResourcePath path = entry.getValue();
+                if (path.getUrl() != MYFACES_URL) { // ref works
+                    uriTldResourcePathMapParent.put(entry.getKey(), path);
+                    final TaglibXml tl = TLD_RESOURCE_TAG_LIB.get(path);
+                    if (tl != null) {
+                        tldResourcePathTaglibXmlMapParent.put(path, tl);
+                    }
+                }
+            }
+        }
     }
 
     //CHECKSTYLE:OFF

http://git-wip-us.apache.org/repos/asf/tomee/blob/924b428a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Paths.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Paths.java b/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Paths.java
index a0ad7be..38eee47 100644
--- a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Paths.java
+++ b/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Paths.java
@@ -303,7 +303,7 @@ public class Paths implements PathsInterface {
             if (tomeeWar != null) {
                 jar = findJar(new File(tomeeWar, "lib"), prefix);
             }
-            if (jar == null || !jar.exists()) {
+            if ((jar == null || !jar.exists()) && prefix.equals("openejb-jpa-integration")) {
                 jar = JarLocation.jarLocation(MakeTxLookup.class);
             }
         }