You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by di...@apache.org on 2008/03/25 18:17:09 UTC

svn commit: r640902 - in /webservices/axis2/trunk/java/modules/kernel: conf/axis2.xml src/org/apache/axis2/deployment/AxisConfigBuilder.java src/org/apache/axis2/deployment/util/Utils.java

Author: dims
Date: Tue Mar 25 10:17:02 2008
New Revision: 640902

URL: http://svn.apache.org/viewvc?rev=640902&view=rev
Log:
Fix for AXIS2-3627 - GenericProviderDispatcher in default war's axis2.xml

Modified:
    webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java

Modified: webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml?rev=640902&r1=640901&r2=640902&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml (original)
+++ webservices/axis2/trunk/java/modules/kernel/conf/axis2.xml Tue Mar 25 10:17:02 2008
@@ -106,12 +106,9 @@
     <!--        <parameter name="RSS_URL">http://127.0.0.1/rss</parameter>-->
     <!--    </listener>-->
     
-    <!-- Uncomment if JAX-WS 2.1 support is needed. -->
-    <!--
     <threadContextMigrators>
         <threadContextMigrator listId="JAXWS-ThreadContextMigrator-List" class="org.apache.axis2.jaxws.addressing.migrator.EndpointContextMapMigrator"/>
     </threadContextMigrators>
-    -->
 
     <!-- ================================================= -->
     <!-- Message Receivers -->
@@ -297,8 +294,10 @@
         <parameter name="PROTOCOL">HTTP/1.1</parameter>
         <parameter name="Transfer-Encoding">chunked</parameter>
     </transportSender>
-    <transportSender name="java"
-                     class="org.apache.axis2.transport.java.JavaTransportSender"/>
+    
+    <!-- Please enable this if you need the java transport -->
+    <!-- <transportSender name="java"
+                     class="org.apache.axis2.transport.java.JavaTransportSender"/> -->
 
     <!--<transportSender name="jms"-->
                      <!--class="org.apache.axis2.transport.jms.JMSSender"/>-->
@@ -406,14 +405,26 @@
                      class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
             <handler name="SOAPMessageBodyBasedDispatcher"
                      class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
-
             <handler name="HTTPLocationBasedDispatcher"
                      class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+            <handler name="GenericProviderDispatcher"
+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>
+            <handler name="MustUnderstandValidationDispatcher"
+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>
         </phase>
         <phase name="RMPhase"/>
         <!--  System predefined phases       -->
         <!--   After Postdispatch phase module author or service author can add any phase he want      -->
-        <phase name="OperationInPhase"/>
+        <phase name="OperationInPhase">
+            <handler name="SoapMessageMUProviderChecker"
+                     class="org.apache.axis2.jaxws.provider.SoapMessageMUProviderChecker">
+                <order phase="OperationInPhase"/>
+            </handler>
+            <handler name="MustUnderstandChecker"
+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandChecker">
+                <order phase="OperationInPhase"/>
+            </handler>
+        </phase>
         <phase name="soapmonitorPhase"/>
     </phaseOrder>
     <phaseOrder type="OutFlow">
@@ -445,9 +456,12 @@
                      class="org.apache.axis2.dispatchers.RequestURIOperationDispatcher"/>
             <handler name="SOAPMessageBodyBasedDispatcher"
                      class="org.apache.axis2.dispatchers.SOAPMessageBodyBasedDispatcher"/>
-
             <handler name="HTTPLocationBasedDispatcher"
                      class="org.apache.axis2.dispatchers.HTTPLocationBasedDispatcher"/>
+            <handler name="GenericProviderDispatcher"
+                     class="org.apache.axis2.jaxws.dispatchers.GenericProviderDispatcher"/>
+            <handler name="MustUnderstandValidationDispatcher"
+                     class="org.apache.axis2.jaxws.dispatchers.MustUnderstandValidationDispatcher"/>
         </phase>
         <phase name="RMPhase"/>
         <!--      user can add his own phases to this area  -->

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java?rev=640902&r1=640901&r2=640902&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/AxisConfigBuilder.java Tue Mar 25 10:17:02 2008
@@ -504,12 +504,12 @@
                 HandlerDescription handler = processHandler(omElement, axisConfig, phaseName);
 
                 handler.getRules().setPhaseName(phaseName);
-                Utils.loadHandler(axisConfig.getSystemClassLoader(), handler);
-
-                try {
-                    phase.addHandler(handler);
-                } catch (PhaseException e) {
-                    throw new DeploymentException(e);
+                if(Utils.loadHandler(axisConfig.getSystemClassLoader(), handler)){
+                    try {
+                        phase.addHandler(handler);
+                    } catch (PhaseException e) {
+                        throw new DeploymentException(e);
+                    }
                 }
             }
 

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java?rev=640902&r1=640901&r2=640902&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java Tue Mar 25 10:17:02 2008
@@ -132,7 +132,7 @@
         }
     }
 
-	public static void loadHandler(ClassLoader loader1, HandlerDescription desc)
+	public static boolean loadHandler(ClassLoader loader1, HandlerDescription desc)
 			throws DeploymentException {
 		String handlername = desc.getClassName();
 		Handler handler;
@@ -168,11 +168,16 @@
 			handler.init(desc);
 			desc.setHandler(handler);
 		} catch (ClassNotFoundException e) {
-			throw new DeploymentException(e);
-		} catch (Exception e) {
+            if(handlername.indexOf("jaxws")>0){
+                log.warn("[JAXWS] - unable to load " + handlername);
+                return false;
+            }
+            throw new DeploymentException(e);
+        } catch (Exception e) {
 			throw new DeploymentException(e);
 		}
-	}
+        return true;
+    }
 	
 	public static URL[] getURLsForAllJars(URL url, File tmpDir) {
         FileInputStream fin = null;



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org