You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by sc...@apache.org on 2008/03/11 23:16:15 UTC

svn commit: r636127 - in /webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers: SOAPMessageBodyBasedDispatcher.java SOAPMessageBodyBasedOperationDispatcher.java

Author: scheu
Date: Tue Mar 11 15:16:07 2008
New Revision: 636127

URL: http://svn.apache.org/viewvc?rev=636127&view=rev
Log:
Quick fix to avoid NPE.

If the namespace is not available, then this is an unqualified element and may not have an OMNamespaceImpl.
In such cases, the operation lookup strategy should be used.  

Modified:
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedDispatcher.java
    webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedOperationDispatcher.java

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedDispatcher.java?rev=636127&r1=636126&r2=636127&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedDispatcher.java Tue Mar 11 15:16:07 2008
@@ -57,8 +57,11 @@
         AxisOperation axisOperation = null;
         if (localName != null){
            OMNamespace ns = messageContext.getEnvelope().getSOAPBodyFirstElementNS();
-           QName qName = new QName(ns.getNamespaceURI(), localName);
-           axisOperation = service.getOperationByMessageElementQName(qName);
+           QName qName = null;
+           if (ns != null) {
+               qName = new QName(ns.getNamespaceURI(), localName);
+               axisOperation = service.getOperationByMessageElementQName(qName);
+           }
 
            // this is required for services uses the RPC message receiver
            if (axisOperation == null){

Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedOperationDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedOperationDispatcher.java?rev=636127&r1=636126&r2=636127&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedOperationDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/dispatchers/SOAPMessageBodyBasedOperationDispatcher.java Tue Mar 11 15:16:07 2008
@@ -52,9 +52,12 @@
 
         if (axisOperation == null) {
             OMNamespace ns = messageContext.getEnvelope().getSOAPBodyFirstElementNS();
-            QName qName = new QName(ns.getNamespaceURI(), localPart);
-            axisOperation = service.getOperationByMessageElementQName(qName);
+            if (ns != null) {
+                QName qName = new QName(ns.getNamespaceURI(), localPart);
+                axisOperation = service.getOperationByMessageElementQName(qName);
+            }
             if (axisOperation == null) {
+                QName qName = new QName(localPart);
                 axisOperation = service.getOperation(qName);
             }
         }



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