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 ch...@apache.org on 2006/06/06 11:25:29 UTC

svn commit: r412054 - in /webservices/axis2/trunk/java/modules: codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java core/src/org/apache/axis2/transport/http/util/RESTUtil.java

Author: chinthaka
Date: Tue Jun  6 02:25:29 2006
New Revision: 412054

URL: http://svn.apache.org/viewvc?rev=412054&view=rev
Log:
- improving RPCMessageReceiver to not to throw NPE when message ns is null
- removing un-necessary try-catch block in RPCMsgReceiver
- Fixing http://issues.apache.org/jira/browse/AXIS2-787

Modified:
    webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java
    webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/util/RESTUtil.java

Modified: webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java?rev=412054&r1=412053&r2=412054&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java (original)
+++ webservices/axis2/trunk/java/modules/codegen/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java Tue Jun  6 02:25:29 2006
@@ -87,11 +87,17 @@
                 messageNameSpace = elementQName.getNamespaceURI();
             }
 
+
             OMNamespace namespace = methodElement.getNamespace();
-            if (namespace == null || !messageNameSpace.equals(namespace.getName())) {
-                throw new AxisFault("namespace mismatch require " +
-                        messageNameSpace +
-                        " found " + methodElement.getNamespace().getName());
+            if (messageNameSpace != null) {
+                if (namespace == null || !messageNameSpace.equals(namespace.getName())) {
+                    throw new AxisFault("namespace mismatch require " +
+                            messageNameSpace +
+                            " found " + methodElement.getNamespace().getName());
+                }
+            } else if (namespace != null) {
+                throw new AxisFault("namespace mismatch. Axis Oepration expects non-namespace " +
+                        "qualified element. But received a namespace qualified element");
             }
             String methodName = op.getName().getLocalPart();
             Method[] methods = ImplClass.getMethods();
@@ -105,11 +111,7 @@
 
             Object[] objectArray = RPCUtil.processRequest(methodElement, method);
             Object resObject;
-            try {
-                resObject = method.invoke(obj, objectArray);
-            } catch (Exception e) {
-                throw new AxisFault(e.getMessage());
-            }
+            resObject = method.invoke(obj, objectArray);
             SOAPFactory fac = getSOAPFactory(inMessage);
 
             // Handling the response
@@ -139,7 +141,7 @@
             String msg = "Exception occurred while trying to invoke service method " +
                     inMessage.getAxisOperation().getName().getLocalPart();
             log.error(msg, e);
-            throw new AxisFault(msg, e);
+            throw AxisFault.makeFault(e);
         }
     }
 

Modified: webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/util/RESTUtil.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/util/RESTUtil.java?rev=412054&r1=412053&r2=412054&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/util/RESTUtil.java (original)
+++ webservices/axis2/trunk/java/modules/core/src/org/apache/axis2/transport/http/util/RESTUtil.java Tue Jun  6 02:25:29 2006
@@ -16,8 +16,8 @@
 package org.apache.axis2.transport.http.util;
 
 import org.apache.axiom.om.OMAbstractFactory;
-import org.apache.axiom.om.util.StAXUtils;
 import org.apache.axiom.om.impl.builder.StAXOMBuilder;
+import org.apache.axiom.om.util.StAXUtils;
 import org.apache.axiom.soap.SOAPBody;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.soap.SOAPFactory;
@@ -37,7 +37,6 @@
 import javax.servlet.ServletInputStream;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import javax.xml.stream.XMLInputFactory;
 import javax.xml.stream.XMLStreamReader;
 import java.io.IOException;
 
@@ -96,6 +95,7 @@
             msgContext.setProperty(HTTPConstants.HTTP_METHOD, HTTPConstants.HTTP_METHOD_POST);
             msgContext.setProperty(HTTPConstants.CONTENT_TYPE, contentType);
             msgContext.setDoingREST(true);
+            msgContext.setProperty(MessageContext.TRANSPORT_OUT, response.getOutputStream()); 
 
             invokeAxisEngine(msgContext);
 



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