You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2009/10/10 03:04:40 UTC

svn commit: r823755 - in /openejb/trunk/openejb3: assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/ container/openejb-core/src/main/java/org/apache/openejb/config/

Author: dblevins
Date: Sat Oct 10 01:04:39 2009
New Revision: 823755

URL: http://svn.apache.org/viewvc?rev=823755&view=rev
Log:
Reverted commit 785901.  http://svn.apache.org/viewvc?view=rev&revision=785901
Going to try and work the changes back in one chunk at a time.  Hopefully that will make it easier to spot when exactly things go bad with the tomcat itests

Modified:
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatJndiBuilder.java
    openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
    openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
    openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/WebModule.java

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatJndiBuilder.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatJndiBuilder.java?rev=823755&r1=823754&r2=823755&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatJndiBuilder.java (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatJndiBuilder.java Sat Oct 10 01:04:39 2009
@@ -397,7 +397,6 @@
 
         if (UserTransaction.class.getName().equals(ref.resourceEnvRefType)) {
             resourceEnv.setProperty(Constants.FACTORY, UserTransactionFactory.class.getName());
-            resourceEnv.setType(ref.resourceEnvRefType);
         } else {
             resourceEnv.setProperty(Constants.FACTORY, ResourceFactory.class.getName());
             resourceEnv.setProperty(NAME, ref.resourceEnvRefName);

Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java?rev=823755&r1=823754&r2=823755&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java Sat Oct 10 01:04:39 2009
@@ -21,9 +21,7 @@
 import org.apache.openejb.api.RemoteClient;
 import org.apache.openejb.loader.SystemInstance;
 import org.apache.openejb.core.webservices.JaxWsUtils;
-import org.apache.openejb.core.TempClassLoader;
 import org.apache.xbean.finder.ClassFinder;
-import org.apache.xbean.finder.UrlSet;
 import org.apache.openejb.jee.ActivationConfig;
 import org.apache.openejb.jee.ApplicationClient;
 import org.apache.openejb.jee.AroundInvoke;
@@ -349,20 +347,11 @@
 
         public WebModule deploy(WebModule webModule) throws OpenEJBException {
             WebApp webApp = webModule.getWebApp();
-            if (webApp != null && (webApp.isMetadataComplete())) return webModule;
+            if (webApp != null && (webApp.isMetadataComplete() || !webApp.getServlet().isEmpty())) return webModule;
 
             ClassFinder finder;
             try {
-                final ClassLoader webClassLoader = webModule.getClassLoader();
-                ClassLoader parent = webClassLoader.getParent();
-
-                if (webClassLoader instanceof TempClassLoader) parent = parent.getParent();
-
-                UrlSet urlSet = new UrlSet(webClassLoader);
-                urlSet = urlSet.exclude(parent);
-                
-                finder = new ClassFinder(webClassLoader, urlSet.getUrls());
-                webModule.setFinder(finder);
+                finder = new ClassFinder(webModule.getClassLoader());
             } catch (Exception e) {
                 startupLogger.warning("Unable to scrape for @WebService or @WebServiceProvider annotations. ClassFinder failed.", e);
                 return webModule;
@@ -821,7 +810,7 @@
             /*
              * Classes added to this set will be scanned for annotations
              */
-            Set<Class> classes = new HashSet<Class>();
+            Set<Class<?>> classes = new HashSet<Class<?>>();
 
 
             ClassLoader classLoader = webModule.getClassLoader();
@@ -947,38 +936,6 @@
                 }
             }
 
-            ClassFinder finder = webModule.getFinder();
-
-            if (finder != null) {
-                String[] webComponentAnnotations = {
-                        "javax.faces.bean.ManagedBean",
-                        "javax.servlet.annotation.WebServlet",
-                        "javax.servlet.annotation.WebServletContextListener",
-                        "javax.servlet.annotation.ServletFilter",
-                };
-
-                List<Class<? extends Annotation>> annotations = new ArrayList<Class<? extends Annotation>>();
-                for (String componentAnnotationName : webComponentAnnotations) {
-                    try {
-                        Class<?> clazz = classLoader.loadClass(componentAnnotationName);
-                        annotations.add(clazz.asSubclass(Annotation.class));
-                    } catch (ClassNotFoundException e) {
-                        logger.debug("Support not enabled: " + componentAnnotationName);
-                    }
-                }
-
-
-                for (Class<? extends Annotation> annotation : annotations) {
-                    logger.debug("Scanning for @" + annotation.getName());
-                    List<Class> list = finder.findAnnotatedClasses(annotation);
-                    if (logger.isDebugEnabled()) for (Class clazz : list) {
-                        logger.debug("Found " + clazz.getName());
-                    }
-                    
-                    classes.addAll(list);
-                }
-            }
-
             ClassFinder inheritedClassFinder = createInheritedClassFinder(classes.toArray(new Class<?>[classes.size()]));
 
             /*

Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java?rev=823755&r1=823754&r2=823755&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java Sat Oct 10 01:04:39 2009
@@ -552,30 +552,6 @@
         }
 
         // determine war class path
-        URL[] webUrls = getWebappUrls(warFile);
-        ClassLoader warClassLoader = ClassLoaderUtil.createTempClassLoader(appId, webUrls, parentClassLoader);
-
-        // create web module
-        WebModule webModule = new WebModule(webApp, contextRoot, warClassLoader, warFile.getAbsolutePath(), moduleName);
-        webModule.getAltDDs().putAll(descriptors);
-        webModule.getWatchedResources().add(warPath);
-        webModule.getWatchedResources().add(warFile.getAbsolutePath());
-        if (webXmlUrl != null && "file".equals(webXmlUrl.getProtocol())) {
-            webModule.getWatchedResources().add(URLs.toFilePath(webXmlUrl));
-        }
-
-        // find all tag libs
-        addTagLibraries(webModule);
-
-        // load webservices descriptor
-        addWebservices(webModule);
-
-        // load faces configuration files
-        addFacesConfigs(webModule);
-        return webModule;
-    }
-
-    public static URL[] getWebappUrls(File warFile) {
         List<URL> webClassPath = new ArrayList<URL>();
         File webInfDir = new File(warFile, "WEB-INF");
         try {
@@ -599,7 +575,26 @@
 
         // create the class loader
         URL[] webUrls = webClassPath.toArray(new URL[webClassPath.size()]);
-        return webUrls;
+        ClassLoader warClassLoader = ClassLoaderUtil.createTempClassLoader(appId, webUrls, parentClassLoader);
+
+        // create web module
+        WebModule webModule = new WebModule(webApp, contextRoot, warClassLoader, warFile.getAbsolutePath(), moduleName);
+        webModule.getAltDDs().putAll(descriptors);
+        webModule.getWatchedResources().add(warPath);
+        webModule.getWatchedResources().add(warFile.getAbsolutePath());
+        if (webXmlUrl != null && "file".equals(webXmlUrl.getProtocol())) {
+            webModule.getWatchedResources().add(URLs.toFilePath(webXmlUrl));
+        }
+
+        // find all tag libs
+        addTagLibraries(webModule);
+
+        // load webservices descriptor
+        addWebservices(webModule);
+
+        // load faces configuration files
+        addFacesConfigs(webModule);
+        return webModule;
     }
 
     private static void addWebservices(WsModule wsModule) throws OpenEJBException {

Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/WebModule.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/WebModule.java?rev=823755&r1=823754&r2=823755&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/WebModule.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/WebModule.java Sat Oct 10 01:04:39 2009
@@ -23,13 +23,11 @@
 import java.util.Map;
 import java.util.Set;
 import java.util.TreeSet;
-import java.util.concurrent.atomic.AtomicReference;
 
 import org.apache.openejb.jee.FacesConfig;
 import org.apache.openejb.jee.TldTaglib;
 import org.apache.openejb.jee.WebApp;
 import org.apache.openejb.jee.Webservices;
-import org.apache.xbean.finder.ClassFinder;
 
 /**
  * @version $Rev$ $Date$
@@ -49,8 +47,6 @@
     private final Set<String> watchedResources = new TreeSet<String>();
     // List of all faces configuration files found in this web module
     private final List<FacesConfig> facesConfigs = new ArrayList<FacesConfig>();
-    private ClassFinder finder;
-
 
     public WebModule(WebApp webApp, String contextRoot, ClassLoader classLoader, String jarLocation, String moduleId) {
         this.webApp = webApp;
@@ -86,14 +82,6 @@
         validation = new ValidationContext(WebModule.class, jarLocation);
     }
 
-    public ClassFinder getFinder() {
-        return finder;
-    }
-
-    public void setFinder(ClassFinder finder) {
-        this.finder = finder;
-    }
-
     public ValidationContext getValidation() {
         return validation;
     }