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 2014/05/28 18:42:14 UTC
svn commit: r1598068 -
/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/QuickContextXmlParser.java
Author: rmannibucau
Date: Wed May 28 16:42:13 2014
New Revision: 1598068
URL: http://svn.apache.org/r1598068
Log:
TOMEE-1225 optimizing QuickContextXmlParser + ensuring it works with placeholders (since we parse it ourself tomcat didn't replace them)
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/QuickContextXmlParser.java
Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/QuickContextXmlParser.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/QuickContextXmlParser.java?rev=1598068&r1=1598067&r2=1598068&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/QuickContextXmlParser.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/QuickContextXmlParser.java Wed May 28 16:42:13 2014
@@ -17,10 +17,9 @@
package org.apache.openejb.config;
-import org.apache.openejb.core.ParentClassLoaderFinder;
import org.apache.openejb.loader.Files;
-import org.apache.openejb.util.reflection.Reflections;
-import org.apache.xbean.finder.ClassLoaders;
+import org.apache.openejb.loader.ProvisioningUtil;
+import org.apache.openejb.util.PropertyPlaceHolderHelper;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
@@ -36,17 +35,16 @@ import java.util.StringTokenizer;
public class QuickContextXmlParser extends DefaultHandler {
private static final SAXParserFactory FACTORY = SAXParserFactory.newInstance();
+
static {
FACTORY.setNamespaceAware(true);
FACTORY.setValidating(false);
}
private String virtualClasspath = "";
- private Collection<URL> urls;
@Override
- public void startElement(final String uri, final String localName,
- final String qName, final Attributes attributes) throws SAXException {
+ public void startElement(final String uri, final String localName, final String qName, final Attributes attributes) throws SAXException {
if ("Loader".equalsIgnoreCase(localName)) {
final String className = attributes.getValue("className");
if (className != null) {
@@ -55,26 +53,6 @@ public class QuickContextXmlParser exten
virtualClasspath = attributes.getValue("virtualClasspath");
}
}
-
- final String loaderClass = attributes.getValue("loaderClass");
- if (loaderClass != null) {
- try {
- final ClassLoader parent = ParentClassLoaderFinder.Helper.get();
-
- // create a fake loader
- final Object loader = parent.loadClass("org.apache.catalina.loader.WebappLoader").newInstance();
- Reflections.set(loader, "loaderClass", loaderClass);
- Reflections.set(loader, "parentClassLoader", parent);
-
- // get the loader
- final ClassLoader instance = ClassLoader.class.cast(Reflections.invokeByReflection(loader, "createClassLoader", new Class<?>[0], null));
- if (instance != null) {
- urls = ClassLoaders.findUrls(instance);
- }
- } catch (final Exception e) {
- // no-op
- }
- }
}
}
@@ -89,14 +67,10 @@ public class QuickContextXmlParser exten
continue;
}
- set.addAll(Files.listJars(token));
+ set.addAll(Files.listJars(ProvisioningUtil.realLocation(PropertyPlaceHolderHelper.simpleValue(token))));
}
}
- if (urls != null) {
- set.addAll(urls);
- }
-
return set;
}