[jbossws-commits] JBossWS SVN: r3902 - in branches/tdiesler/trunk: integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42 and 10 other directories.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Mon Jul 16 18:20:11 EDT 2007


Author: thomas.diesler at jboss.com
Date: 2007-07-16 18:20:11 -0400 (Mon, 16 Jul 2007)
New Revision: 3902

Removed:
   branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/ClassLoaderInjectionDeploymentAspect.java
   branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ClassLoaderInjectionDeploymentAspect.java
Modified:
   branches/tdiesler/trunk/integration/jboss40/src/main/resources/jbossws-jboss40-config.xml
   branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookEJB21.java
   branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookJSE.java
   branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookEJB3.java
   branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookJSE.java
   branches/tdiesler/trunk/integration/jboss42/src/main/resources/jbossws-jboss42-config.xml
   branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/DeploymentInfoAdapter.java
   branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXRPCDeployerHookJSE.java
   branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookEJB3.java
   branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookJSE.java
   branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ModifyWebMetaDataDeploymentAspect.java
   branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java
   branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/RequestHandlerImpl.java
   branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/ServiceEndpointContextListener.java
   branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native-config.xml
   branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicDeployment.java
   branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicEndpoint.java
   branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/Deployment.java
   branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java
   branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java
   branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri/WebAppDesciptorModifierImpl.java
   branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire/WebAppDesciptorModifierImpl.java
   branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxrpc/SOAPFaultHelperJAXRPC.java
   branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/SOAPFaultHelperJAXWS.java
   branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/umdm/OperationMetaData.java
Log:
partial

Modified: branches/tdiesler/trunk/integration/jboss40/src/main/resources/jbossws-jboss40-config.xml
===================================================================
--- branches/tdiesler/trunk/integration/jboss40/src/main/resources/jbossws-jboss40-config.xml	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss40/src/main/resources/jbossws-jboss40-config.xml	2007-07-16 22:20:11 UTC (rev 3902)
@@ -48,7 +48,7 @@
   </bean>
   <bean name="WSDeployerHook_JAXRPC_EJB21" class="org.jboss.wsf.container.jboss42.JAXRPCDeployerHookEJB21">
     <property name="deploymentAspectManager"><inject bean="WSDeploymentAspectManagerEJB"/></property>
-    <property name="phaseOneInterceptors">
+    <property name="phaseTwoInterceptors">
       <list class="java.util.LinkedList" elementClass="javax.management.ObjectName">
         <value>jboss.ws:service=DeployerInterceptorEJB21</value>
       </list>
@@ -64,18 +64,8 @@
   </bean>
   <bean name="WSDeployerHook_JAXWS_EJB3" class="org.jboss.wsf.container.jboss42.JAXWSDeployerHookEJB3">
     <property name="deploymentAspectManager"><inject bean="WSDeploymentAspectManagerEJB"/></property>
-    <property name="phaseOneInterceptors">
-      <list class="java.util.LinkedList" elementClass="javax.management.ObjectName">
-        <value>jboss.ws:service=DeployerInterceptorEJB3</value>
-      </list>
-    </property>
-  </bean>
-  <bean name="WSMainDeployerHook" class="org.jboss.wsf.container.jboss42.MainDeployerHook">
-    <property name="deploymentAspectManager"><inject bean="WSMainDeploymentAspectManager"/></property>
     <property name="phaseTwoInterceptors">
       <list class="java.util.LinkedList" elementClass="javax.management.ObjectName">
-        <value>jboss.ws:service=DeployerInterceptorJSE</value>
-        <value>jboss.ws:service=DeployerInterceptorEJB21</value>
         <value>jboss.ws:service=DeployerInterceptorEJB3</value>
       </list>
     </property>
@@ -90,18 +80,10 @@
   <bean name="WSDeploymentAspectManagerEJB" class="org.jboss.wsf.spi.deployment.BasicDeploymentAspectManager">
     <property name="name">WSDeploymentAspectManagerEJB</property>
   </bean>
-  <bean name="WSMainDeploymentAspectManager" class="org.jboss.wsf.spi.deployment.BasicDeploymentAspectManager">
-    <property name="name">WSMainDeploymentAspectManager</property>
-  </bean>
   
   <!-- 
     The container deployment aspects
   --> 
-  <bean name="WSClassLoaderInjectionDeploymentAspect" class="org.jboss.wsf.container.jboss42.ClassLoaderInjectionDeploymentAspect">
-    <property name="requires">AllowClassLoaderInjection</property>
-    <property name="provides">ContainerClassLoader</property>
-  </bean>
-  
   <bean name="WSContextRootDeploymentAspect" class="org.jboss.wsf.spi.deployment.BackwardCompatibleContextRootDeploymentAspect">
     <property name="requires">ContainerMetaData</property>
     <property name="provides">ContextRoot</property>
@@ -133,7 +115,7 @@
   </bean>
   
   <bean name="WSEndpointRegistryDeploymentAspect" class="org.jboss.wsf.spi.deployment.EndpointRegistryDeploymentAspect">
-    <property name="requires">EndpointName,StackEndpointHandler,InitializedMetaDataModel</property>
+    <property name="requires">EndpointName,StackEndpointHandler</property>
     <property name="provides">RegisteredEndpoint</property>
   </bean>
   
@@ -187,16 +169,22 @@
     <property name="manager"><inject bean="WSDeploymentAspectManagerJSE"/></property>
     <property name="aspects">
       <set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
+        <inject bean="WSContextRootDeploymentAspect"/>
+        <inject bean="WSEndpointHandlerDeploymentAspect"/>
+        <inject bean="WSEndpointLifecycleDeploymentAspect"/>
+        <inject bean="WSEndpointMetricsDeploymentAspect"/>
+        <inject bean="WSEndpointNameDeploymentAspect"/>
+        <inject bean="WSEndpointRegistryDeploymentAspect"/>
         <inject bean="WSModifyWebMetaDataDeploymentAspect"/>
         <inject bean="WSUnifiedDeploymentInfoDeploymentAspect"/>
+        <inject bean="WSURLPatternDeploymentAspect"/>
       </set>
     </property>
   </bean>
-  <bean name="WSMainDeploymentAspectInstaller" class="org.jboss.wsf.spi.deployment.DeploymentAspectInstaller">
-    <property name="manager"><inject bean="WSMainDeploymentAspectManager"/></property>
+  <bean name="WSDeploymentAspectInstallerEJB" class="org.jboss.wsf.spi.deployment.DeploymentAspectInstaller">
+    <property name="manager"><inject bean="WSDeploymentAspectManagerEJB"/></property>
     <property name="aspects">
       <set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
-        <inject bean="WSClassLoaderInjectionDeploymentAspect"/>
         <inject bean="WSContextRootDeploymentAspect"/>
         <inject bean="WSEndpointHandlerDeploymentAspect"/>
         <inject bean="WSEndpointLifecycleDeploymentAspect"/>

Deleted: branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/ClassLoaderInjectionDeploymentAspect.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/ClassLoaderInjectionDeploymentAspect.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/ClassLoaderInjectionDeploymentAspect.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -1,57 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.wsf.container.jboss42;
-
-//$Id: ClassLoaderInjectionDeployer.java 3147 2007-05-19 15:35:46Z thomas.diesler at jboss.com $
-
-import org.jboss.deployment.DeploymentInfo;
-import org.jboss.metadata.WebMetaData;
-import org.jboss.wsf.spi.deployment.DeploymentAspect;
-import org.jboss.wsf.spi.deployment.Deployment;
-
-/**
- * A deployer that injects the correct classloader into the UMDM 
- *
- * @author Thomas.Diesler at jboss.org
- * @since 25-Apr-2007
- */
-public class ClassLoaderInjectionDeploymentAspect extends DeploymentAspect
-{
-   @Override
-   public void create(Deployment dep)
-   {
-      DeploymentInfo unit = dep.getContext().getAttachment(DeploymentInfo.class);
-      if (unit == null)
-         throw new IllegalStateException("Cannot obtain deployement unit");
-
-      ClassLoader classLoader = unit.ucl;
-
-      // Get the webapp context classloader and use it as the deploymet class loader
-      WebMetaData webMetaData = dep.getContext().getAttachment(WebMetaData.class);
-      if (webMetaData != null)
-      {
-         classLoader = webMetaData.getContextLoader();
-      }
-
-      dep.setClassLoader(classLoader);
-   }
-}
\ No newline at end of file

Modified: branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookEJB21.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookEJB21.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookEJB21.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -55,7 +55,8 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new URLLoaderAdapter(unit.localUrl));
-      dep.setClassLoader(unit.annotationsCl);
+      dep.setInitialClassLoader(unit.annotationsCl);
+      dep.setRuntimeClassLoader(unit.ucl);
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();

Modified: branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookJSE.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookJSE.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXRPCDeployerHookJSE.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -61,7 +61,8 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new URLLoaderAdapter(unit.localUrl));
-      dep.setClassLoader(unit.annotationsCl);
+      dep.setInitialClassLoader(unit.annotationsCl);
+      dep.setRuntimeClassLoader(null);
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();
@@ -91,7 +92,7 @@
 
             try
             {
-               ClassLoader loader = dep.getClassLoader();
+               ClassLoader loader = dep.getInitialClassLoader();
                Class<?> epBean = loader.loadClass(servletClass.trim());
 
                // If this is a servlet we defer the the bean creation 

Modified: branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookEJB3.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookEJB3.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookEJB3.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -56,7 +56,8 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new URLLoaderAdapter(unit.localUrl));
-      dep.setClassLoader(unit.annotationsCl);
+      dep.setInitialClassLoader(unit.annotationsCl);
+      dep.setRuntimeClassLoader(unit.ucl);
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();

Modified: branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookJSE.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookJSE.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss42/src/main/java/org/jboss/wsf/container/jboss42/JAXWSDeployerHookJSE.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -60,7 +60,8 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new URLLoaderAdapter(unit.localUrl));
-      dep.setClassLoader(unit.annotationsCl);
+      dep.setInitialClassLoader(unit.annotationsCl);
+      dep.setRuntimeClassLoader(null);
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();

Modified: branches/tdiesler/trunk/integration/jboss42/src/main/resources/jbossws-jboss42-config.xml
===================================================================
--- branches/tdiesler/trunk/integration/jboss42/src/main/resources/jbossws-jboss42-config.xml	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss42/src/main/resources/jbossws-jboss42-config.xml	2007-07-16 22:20:11 UTC (rev 3902)
@@ -48,7 +48,7 @@
   </bean>
   <bean name="WSDeployerHook_JAXRPC_EJB21" class="org.jboss.wsf.container.jboss42.JAXRPCDeployerHookEJB21">
     <property name="deploymentAspectManager"><inject bean="WSDeploymentAspectManagerEJB"/></property>
-    <property name="phaseOneInterceptors">
+    <property name="phaseTwoInterceptors">
       <list class="java.util.LinkedList" elementClass="javax.management.ObjectName">
         <value>jboss.ws:service=DeployerInterceptorEJB21</value>
       </list>
@@ -64,18 +64,8 @@
   </bean>
   <bean name="WSDeployerHook_JAXWS_EJB3" class="org.jboss.wsf.container.jboss42.JAXWSDeployerHookEJB3">
     <property name="deploymentAspectManager"><inject bean="WSDeploymentAspectManagerEJB"/></property>
-    <property name="phaseOneInterceptors">
-      <list class="java.util.LinkedList" elementClass="javax.management.ObjectName">
-        <value>jboss.ws:service=DeployerInterceptorEJB3</value>
-      </list>
-    </property>
-  </bean>
-  <bean name="WSMainDeployerHook" class="org.jboss.wsf.container.jboss42.MainDeployerHook">
-    <property name="deploymentAspectManager"><inject bean="WSMainDeploymentAspectManager"/></property>
     <property name="phaseTwoInterceptors">
       <list class="java.util.LinkedList" elementClass="javax.management.ObjectName">
-        <value>jboss.ws:service=DeployerInterceptorJSE</value>
-        <value>jboss.ws:service=DeployerInterceptorEJB21</value>
         <value>jboss.ws:service=DeployerInterceptorEJB3</value>
       </list>
     </property>
@@ -90,18 +80,10 @@
   <bean name="WSDeploymentAspectManagerEJB" class="org.jboss.wsf.spi.deployment.BasicDeploymentAspectManager">
     <property name="name">WSDeploymentAspectManagerEJB</property>
   </bean>
-  <bean name="WSMainDeploymentAspectManager" class="org.jboss.wsf.spi.deployment.BasicDeploymentAspectManager">
-    <property name="name">WSMainDeploymentAspectManager</property>
-  </bean>
   
   <!-- 
     The container deployment aspects
   --> 
-  <bean name="WSClassLoaderInjectionDeploymentAspect" class="org.jboss.wsf.container.jboss42.ClassLoaderInjectionDeploymentAspect">
-    <property name="requires">AllowClassLoaderInjection</property>
-    <property name="provides">ContainerClassLoader</property>
-  </bean>
-  
   <bean name="WSContextRootDeploymentAspect" class="org.jboss.wsf.spi.deployment.BackwardCompatibleContextRootDeploymentAspect">
     <property name="requires">ContainerMetaData</property>
     <property name="provides">ContextRoot</property>
@@ -133,7 +115,7 @@
   </bean>
   
   <bean name="WSEndpointRegistryDeploymentAspect" class="org.jboss.wsf.spi.deployment.EndpointRegistryDeploymentAspect">
-    <property name="requires">EndpointName,StackEndpointHandler,InitializedMetaDataModel</property>
+    <property name="requires">EndpointName, StackEndpointHandler</property>
     <property name="provides">RegisteredEndpoint</property>
   </bean>
   
@@ -186,16 +168,22 @@
     <property name="manager"><inject bean="WSDeploymentAspectManagerJSE"/></property>
     <property name="aspects">
       <set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
+        <inject bean="WSContextRootDeploymentAspect"/>
+        <inject bean="WSEndpointHandlerDeploymentAspect"/>
+        <inject bean="WSEndpointLifecycleDeploymentAspect"/>
+        <inject bean="WSEndpointMetricsDeploymentAspect"/>
+        <inject bean="WSEndpointNameDeploymentAspect"/>
+        <inject bean="WSEndpointRegistryDeploymentAspect"/>
         <inject bean="WSModifyWebMetaDataDeploymentAspect"/>
         <inject bean="WSUnifiedDeploymentInfoDeploymentAspect"/>
+        <inject bean="WSURLPatternDeploymentAspect"/>
       </set>
     </property>
   </bean>
-  <bean name="WSMainDeploymentAspectInstaller" class="org.jboss.wsf.spi.deployment.DeploymentAspectInstaller">
-    <property name="manager"><inject bean="WSMainDeploymentAspectManager"/></property>
+  <bean name="WSDeploymentAspectInstallerEJB" class="org.jboss.wsf.spi.deployment.DeploymentAspectInstaller">
+    <property name="manager"><inject bean="WSDeploymentAspectManagerEJB"/></property>
     <property name="aspects">
       <set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
-        <inject bean="WSClassLoaderInjectionDeploymentAspect"/>
         <inject bean="WSContextRootDeploymentAspect"/>
         <inject bean="WSEndpointHandlerDeploymentAspect"/>
         <inject bean="WSEndpointLifecycleDeploymentAspect"/>

Deleted: branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ClassLoaderInjectionDeploymentAspect.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ClassLoaderInjectionDeploymentAspect.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ClassLoaderInjectionDeploymentAspect.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -1,57 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.wsf.container.jboss50;
-
-//$Id: ClassLoaderInjectionDeployer.java 3772 2007-07-01 19:29:13Z thomas.diesler at jboss.com $
-
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.metadata.WebMetaData;
-import org.jboss.wsf.spi.deployment.DeploymentAspect;
-import org.jboss.wsf.spi.deployment.Deployment;
-
-/**
- * A deployer that injects the correct classloader into the Deployment 
- *
- * @author Thomas.Diesler at jboss.org
- * @since 25-Apr-2007
- */
-public class ClassLoaderInjectionDeploymentAspect extends DeploymentAspect
-{
-   @Override
-   public void create(Deployment dep)
-   {
-      DeploymentUnit unit = dep.getContext().getAttachment(DeploymentUnit.class);
-      if (unit == null)
-         throw new IllegalStateException("Cannot obtain deployement unit");
-
-      ClassLoader classLoader = unit.getClassLoader();
-
-      // Get the webapp context classloader and use it as the deploymet class loader
-      WebMetaData webMetaData = dep.getContext().getAttachment(WebMetaData.class);
-      if (webMetaData != null)
-      {
-         classLoader = webMetaData.getContextLoader();
-      }
-
-      dep.setClassLoader(classLoader);
-   }
-}
\ No newline at end of file

Modified: branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/DeploymentInfoAdapter.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/DeploymentInfoAdapter.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/DeploymentInfoAdapter.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -88,7 +88,7 @@
          // Since we create temporary classes, we need to create a delegate loader
          // This prevents CCE problems where the parent loader is available at deploy time,
          // and a child loader is available at start time.
-         udi.classLoader = new URLClassLoader(new URL[] {}, unit.getClassLoader());
+         udi.classLoader = new URLClassLoader(new URL[] {}, unit.getInitialClassLoader());
 
          log.debug("UnifiedDeploymentInfo:\n" + udi);
       }

Modified: branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXRPCDeployerHookJSE.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXRPCDeployerHookJSE.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXRPCDeployerHookJSE.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -58,7 +58,7 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
-      dep.setClassLoader(unit.getClassLoader());
+      dep.setInitialClassLoader(unit.getClassLoader());
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();

Modified: branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookEJB3.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookEJB3.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookEJB3.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -58,7 +58,7 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
-      dep.setClassLoader(unit.getClassLoader());
+      dep.setInitialClassLoader(unit.getInitialClassLoader());
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();

Modified: branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookJSE.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookJSE.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/JAXWSDeployerHookJSE.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -58,7 +58,7 @@
    {
       Deployment dep = createDeployment();
       dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
-      dep.setClassLoader(unit.getClassLoader());
+      dep.setInitialClassLoader(unit.getInitialClassLoader());
       dep.setType(getDeploymentType());
 
       Service service = dep.getService();
@@ -70,7 +70,7 @@
       // Copy the attachments
       dep.getContext().addAttachment(WebMetaData.class, webMetaData);
 
-      List<Servlet> servlets = getRelevantServlets(webMetaData, unit.getClassLoader());
+      List<Servlet> servlets = getRelevantServlets(webMetaData, unit.getInitialClassLoader());
       for (Servlet servlet : servlets)
       {
          String servletName = servlet.getName();
@@ -98,7 +98,7 @@
       try
       {
          WebMetaData webMetaData = unit.getAttachment(WebMetaData.class);
-         List<Servlet> servlets = getRelevantServlets(webMetaData, unit.getClassLoader());
+         List<Servlet> servlets = getRelevantServlets(webMetaData, unit.getInitialClassLoader());
          isWebServiceDeployment = servlets.size() > 0;
       }
       catch (Exception ex)

Modified: branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ModifyWebMetaDataDeploymentAspect.java
===================================================================
--- branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ModifyWebMetaDataDeploymentAspect.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/jboss50/src/main/java/org/jboss/wsf/container/jboss50/ModifyWebMetaDataDeploymentAspect.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -83,7 +83,7 @@
             }
 
             // Nothing to do if we have an <init-param>
-            if (!isAlreadyModified(servlet) && !isJavaxServlet(orgServletClass, dep.getClassLoader()))
+            if (!isAlreadyModified(servlet) && !isJavaxServlet(orgServletClass, dep.getInitialClassLoader()))
             {
                servlet.setServletClass(servletClass);
                NameValuePair initParam = new NameValuePair(Endpoint.SEPID_DOMAIN_ENDPOINT, orgServletClass);

Modified: branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java
===================================================================
--- branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/EagerInitializeDeploymentAspect.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -42,7 +42,7 @@
       if (umd == null)
          throw new IllegalStateException("Cannot obtain unified meta data");
       
-      umd.setClassLoader(dep.getClassLoader());
+      umd.setClassLoader(dep.getRuntimeClassLoader());
       umd.eagerInitialize();
    }
 }
\ No newline at end of file

Modified: branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/RequestHandlerImpl.java
===================================================================
--- branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/RequestHandlerImpl.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/RequestHandlerImpl.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -164,7 +164,7 @@
       ServletInputStream in = req.getInputStream();
       ServletOutputStream out = res.getOutputStream();
 
-      ClassLoader classLoader = endpoint.getService().getDeployment().getClassLoader();
+      ClassLoader classLoader = endpoint.getService().getDeployment().getInitialClassLoader();
       if (classLoader == null)
          throw new IllegalStateException("Deployment has no classloader associated");
       

Modified: branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/ServiceEndpointContextListener.java
===================================================================
--- branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/ServiceEndpointContextListener.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/native/src/main/java/org/jboss/wsf/stack/jbws/ServiceEndpointContextListener.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -56,24 +56,25 @@
          if (contextPath.equals("/" + propContext))
          {
             Endpoint ep = epRegistry.getEndpoint(sepId);
-
             Deployment dep = ep.getService().getDeployment();
-            ClassLoader classLoader = dep.getClassLoader();
 
-            // For JSE endpoints, this should be the tomcat classloader
             if (dep.getType() == DeploymentType.JAXRPC_JSE || dep.getType() == DeploymentType.JAXWS_JSE)
-               classLoader = Thread.currentThread().getContextClassLoader();
+            {
+               // For JSE endpoints, this should be the tomcat classloader
+               ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
+               dep.setRuntimeClassLoader(classLoader);
 
-            UnifiedMetaData umd = dep.getContext().getAttachment(UnifiedMetaData.class);
-            if (umd.isEagerInitialized() == false)
-            {
-               umd.setClassLoader(classLoader);
-               umd.eagerInitialize();
+               UnifiedMetaData umd = dep.getContext().getAttachment(UnifiedMetaData.class);
+               if (umd.isEagerInitialized() == false)
+               {
+                  umd.setClassLoader(classLoader);
+                  umd.eagerInitialize();
+               }
+
+               // start the endpoint
+               if (ep.getState() == EndpointState.CREATED)
+                  ep.getLifecycleHandler().start(ep);
             }
-
-            // start the endpoint
-            if (ep.getState() == EndpointState.CREATED)
-               ep.getLifecycleHandler().start(ep);
          }
       }
    }
@@ -90,10 +91,13 @@
          if (contextPath.equals(propContext))
          {
             Endpoint ep = epRegistry.getEndpoint(sepId);
-            
-            // stop the endpoint
-            if (ep.getState() == EndpointState.STARTED)
-               ep.getLifecycleHandler().stop(ep);
+            Deployment dep = ep.getService().getDeployment();
+
+            if (dep.getType() == DeploymentType.JAXRPC_JSE || dep.getType() == DeploymentType.JAXWS_JSE)
+            {
+               if (ep.getState() == EndpointState.STARTED)
+                  ep.getLifecycleHandler().stop(ep);
+            }
          }
       }
    }

Modified: branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native-config.xml
===================================================================
--- branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native-config.xml	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/native/src/main/resources/jbossws-native-config.xml	2007-07-16 22:20:11 UTC (rev 3902)
@@ -57,6 +57,11 @@
     </property>
   </bean>
   
+  <bean name="WSNativeEagerInitializeDeploymentAspect" class="org.jboss.wsf.stack.jbws.EagerInitializeDeploymentAspect">
+    <property name="requires">UnifiedMetaDataModel</property>
+    <property name="provides">InitializedMetaDataModel</property>
+  </bean>
+  
   <bean name="WSNativeEndpointHandlerDeploymentAspect" class="org.jboss.wsf.spi.deployment.EndpointHandlerDeploymentAspect">
     <property name="requires">ContainerEndpointHandler</property>
     <property name="provides">StackEndpointHandler</property>
@@ -106,6 +111,7 @@
     <property name="aspects">
       <set class="java.util.HashSet" elementClass="org.jboss.wsf.spi.deployment.DeploymentAspect">
         <inject bean="WSNativeContextPropertiesDeploymentAspect"/>
+        <inject bean="WSNativeEagerInitializeDeploymentAspect"/>
         <inject bean="WSNativeEndpointHandlerDeploymentAspect"/>
         <inject bean="WSNativeEventingDeploymentAspect"/>
         <inject bean="WSNativePublishContractDeploymentAspect"/>

Modified: branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicDeployment.java
===================================================================
--- branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicDeployment.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicDeployment.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -47,7 +47,9 @@
    // The state for this deployment
    private DeploymentState state;
    // The deployment class loader
-   private ClassLoader classLoader;
+   private ClassLoader initialLoader;
+   // The runtime class loader
+   private ClassLoader runtimeLoader;
 
    public BasicDeployment()
    {
@@ -76,16 +78,26 @@
       this.rootFile = rootFile;
    }
 
-   public void setClassLoader(ClassLoader classLoader)
+   public void setInitialClassLoader(ClassLoader classLoader)
    {
-      this.classLoader = classLoader;
+      this.initialLoader = classLoader;
    }
    
-   public ClassLoader getClassLoader()
+   public ClassLoader getInitialClassLoader()
    {
-      return classLoader;
+      return initialLoader;
    }
    
+   public void setRuntimeClassLoader(ClassLoader classLoader)
+   {
+      this.runtimeLoader = classLoader;
+   }
+   
+   public ClassLoader getRuntimeClassLoader()
+   {
+      return runtimeLoader;
+   }
+   
    public Service getService()
    {
       return service;

Modified: branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicEndpoint.java
===================================================================
--- branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicEndpoint.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/BasicEndpoint.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -83,8 +83,11 @@
       if (targetBean == null)
          throw new IllegalStateException("Target bean not set");
 
-      ClassLoader classLoader = service.getDeployment().getClassLoader();
+      ClassLoader classLoader = service.getDeployment().getRuntimeClassLoader();
       if (classLoader == null)
+         classLoader = service.getDeployment().getInitialClassLoader();
+      
+      if (classLoader == null)
          throw new IllegalStateException("Deployment classloader not set");
 
       Class beanClass;

Modified: branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/Deployment.java
===================================================================
--- branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/Deployment.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/Deployment.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -54,11 +54,17 @@
    void setRootFile(UnifiedVirtualFile root);
    
    /** Get the class loader for this deployment */
-   ClassLoader getClassLoader();
+   ClassLoader getInitialClassLoader();
    
    /** Set the class loader for this deployment */
-   void setClassLoader(ClassLoader loader);
+   void setInitialClassLoader(ClassLoader loader);
    
+   /** Get the runtime class loader for this deployment */
+   ClassLoader getRuntimeClassLoader();
+   
+   /** Set the runtime class loader for this deployment */
+   void setRuntimeClassLoader(ClassLoader loader);
+   
    /** Get the deployment context */
    DeploymentContext getContext();
    

Modified: branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java
===================================================================
--- branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/EndpointHandlerDeploymentAspect.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -84,7 +84,7 @@
    {
       try
       {
-         Class<?> handlerClass = dep.getClassLoader().loadClass(requestHandler);
+         Class<?> handlerClass = dep.getInitialClassLoader().loadClass(requestHandler);
          return (RequestHandler)handlerClass.newInstance();
       }
       catch (Exception e)
@@ -97,7 +97,7 @@
    {
       try
       {
-         Class<?> handlerClass = dep.getClassLoader().loadClass(lifecycleHandler);
+         Class<?> handlerClass = dep.getInitialClassLoader().loadClass(lifecycleHandler);
          return (LifecycleHandler)handlerClass.newInstance();
       }
       catch (Exception e)
@@ -128,7 +128,7 @@
       {
          try
          {
-            Class<?> handlerClass = dep.getClassLoader().loadClass(className);
+            Class<?> handlerClass = dep.getInitialClassLoader().loadClass(className);
             invocationHandler = (InvocationHandler)handlerClass.newInstance();
          }
          catch (Exception e)

Modified: branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java
===================================================================
--- branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/spi/src/main/java/org/jboss/wsf/spi/deployment/WebAppDesciptorModifierImpl.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -87,7 +87,7 @@
          Class orgServletClass = null;
          try
          {
-            ClassLoader loader = dep.getClassLoader();
+            ClassLoader loader = dep.getInitialClassLoader();
             orgServletClass = loader.loadClass(orgServletClassName);
          }
          catch (ClassNotFoundException ex)

Modified: branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri/WebAppDesciptorModifierImpl.java
===================================================================
--- branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri/WebAppDesciptorModifierImpl.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/sunri/src/main/java/org/jboss/wsf/stack/sunri/WebAppDesciptorModifierImpl.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -98,7 +98,7 @@
          Class orgServletClass = null;
          try
          {
-            ClassLoader loader = dep.getClassLoader();
+            ClassLoader loader = dep.getInitialClassLoader();
             orgServletClass = loader.loadClass(orgServletClassName);
          }
          catch (ClassNotFoundException ex)

Modified: branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire/WebAppDesciptorModifierImpl.java
===================================================================
--- branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire/WebAppDesciptorModifierImpl.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/integration/xfire/src/main/java/org/jboss/wsf/stack/xfire/WebAppDesciptorModifierImpl.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -85,7 +85,7 @@
          Class orgServletClass = null;
          try
          {
-            ClassLoader loader = dep.getClassLoader();
+            ClassLoader loader = dep.getInitialClassLoader();
             orgServletClass = loader.loadClass(orgServletClassName);
          }
          catch (ClassNotFoundException ex)

Modified: branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxrpc/SOAPFaultHelperJAXRPC.java
===================================================================
--- branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxrpc/SOAPFaultHelperJAXRPC.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxrpc/SOAPFaultHelperJAXRPC.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -257,9 +257,9 @@
          TypeMapping typeMapping = serContext.getTypeMapping();
 
          OperationMetaData opMetaData = msgContext.getOperationMetaData();
-         if (opMetaData != null && opMetaData.getFault(javaType) != null)
+         if (opMetaData != null && opMetaData.getFaultMetaData(javaType) != null)
          {
-            FaultMetaData faultMetaData = opMetaData.getFault(javaType);
+            FaultMetaData faultMetaData = opMetaData.getFaultMetaData(javaType);
             QName xmlName = faultMetaData.getXmlName();
             QName xmlType = faultMetaData.getXmlType();
 

Modified: branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/SOAPFaultHelperJAXWS.java
===================================================================
--- branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/SOAPFaultHelperJAXWS.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/SOAPFaultHelperJAXWS.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -259,9 +259,9 @@
 
       OperationMetaData opMetaData = msgContext.getOperationMetaData();
       Class<? extends Exception> exClass = ex.getClass();
-      if (opMetaData != null && opMetaData.getFault(exClass) != null)
+      if (opMetaData != null && opMetaData.getFaultMetaData(exClass) != null)
       {
-         FaultMetaData faultMetaData = opMetaData.getFault(exClass);
+         FaultMetaData faultMetaData = opMetaData.getFaultMetaData(exClass);
          Object faultBean = faultMetaData.toFaultBean(ex);
 
          Detail detail = soapFault.addDetail();

Modified: branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/umdm/OperationMetaData.java
===================================================================
--- branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/umdm/OperationMetaData.java	2007-07-16 20:47:16 UTC (rev 3901)
+++ branches/tdiesler/trunk/jbossws-core/src/main/java/org/jboss/ws/metadata/umdm/OperationMetaData.java	2007-07-16 22:20:11 UTC (rev 3902)
@@ -375,7 +375,7 @@
       return faultMetaData;
    }
 
-   public FaultMetaData getFault(Class javaType)
+   public FaultMetaData getFaultMetaData(Class javaType)
    {
       FaultMetaData faultMetaData = null;
       for (FaultMetaData aux : faults)




More information about the jbossws-commits mailing list