You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by am...@apache.org on 2011/02/06 07:24:21 UTC

svn commit: r1067601 - in /axis/axis2/java/core/trunk/modules: adb/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java

Author: amilas
Date: Sun Feb  6 06:24:20 2011
New Revision: 1067601

URL: http://svn.apache.org/viewvc?rev=1067601&view=rev
Log:
append the operation name to the exception element. other wise if both the exception complex type and element name in the same schema, jaxbri code generation throws an exception

Modified:
    axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java
    axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java

Modified: axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java?rev=1067601&r1=1067600&r2=1067601&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java (original)
+++ axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/rpc/receivers/RPCMessageReceiver.java Sun Feb  6 06:24:20 2011
@@ -174,7 +174,7 @@ public class RPCMessageReceiver extends 
             for (Class exceptionType : exceptionTypes){
                 if (exceptionType.getName().equals(cause.getClass().getName())){
                     // this is an bussiness logic exception so handle it properly
-                    String partQName = getSimpleClassName(exceptionType);
+                    String partQName = method.getName() + getSimpleClassName(exceptionType);
                     TypeTable typeTable = inMessage.getAxisService().getTypeTable();
                     QName elementQName = typeTable.getQNamefortheType(partQName);
                     SOAPFactory fac = getSOAPFactory(inMessage);
@@ -190,8 +190,9 @@ public class RPCMessageReceiver extends 
                        exceptionElement.addChild(innterExceptionElement);
                     } else {
                         // if it is a normal bussiness exception we need to generate the schema assuming it is a pojo
+                        QName innerElementQName = new QName(elementQName.getNamespaceURI(), getSimpleClassName(exceptionType));
                         XMLStreamReader xr = BeanUtil.getPullParser(cause,
-                                elementQName, typeTable, true, false);
+                                innerElementQName, typeTable, true, false);
                         StAXOMBuilder stAXOMBuilder = new StAXOMBuilder(OMAbstractFactory.getOMFactory(), new StreamWrapper(xr));
                         OMElement documentElement = stAXOMBuilder.getDocumentElement();
                         exceptionElement.addChild(documentElement);

Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java?rev=1067601&r1=1067600&r2=1067601&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java (original)
+++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java Sun Feb  6 06:24:20 2011
@@ -443,7 +443,7 @@ public class DefaultSchemaGenerator impl
                 if (AxisFault.class.getName().equals(extype.getName())) {
                     continue;
                 }
-                String partQname = getSimpleClassName(extype);
+                String partQname = jMethod.getName() + getSimpleClassName(extype);
                 methodSchemaType = createSchemaTypeForFault(partQname);
                 QName elementName =
                         new QName(this.schemaTargetNameSpace, partQname, this.schema_namespace_prefix);
@@ -473,7 +473,7 @@ public class DefaultSchemaGenerator impl
                     continue;
                 }
                 AxisMessage faultMessage = new AxisMessage();
-                faultMessage.setName(getSimpleClassName(extype));
+                faultMessage.setName(jMethod.getName() + getSimpleClassName(extype));
                 faultMessage.setElementQName(typeTable.getQNamefortheType(partQname));
                 axisOperation.setFaultMessages(faultMessage);
             }