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 da...@apache.org on 2004/07/08 15:00:31 UTC
cvs commit: ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal BeanParamWriter.java ClientStubHeaderWriter.java ClientStubWriter.java
damitha 2004/07/08 06:00:29
Modified: c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal Tag:
Release1-2-branch BeanParamWriter.java
ClientStubHeaderWriter.java ClientStubWriter.java
Log:
OK Now doclit fault generation should work fine
Revision Changes Path
No revision
No revision
1.19.2.1 +1 -1 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/BeanParamWriter.java
Index: BeanParamWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/BeanParamWriter.java,v
retrieving revision 1.19
retrieving revision 1.19.2.1
diff -u -r1.19 -r1.19.2.1
--- BeanParamWriter.java 11 Jun 2004 05:01:28 -0000 1.19
+++ BeanParamWriter.java 8 Jul 2004 13:00:28 -0000 1.19.2.1
@@ -210,7 +210,7 @@
//if complex type
writer.write("\tparam->"+attribs[i].getParamName()+" = ("+attribs[i].getTypeName()+"*)pIWSDZ->getCmplxObject((void*)Axis_DeSerialize_"+attribs[i].getTypeName()+
"\n\t\t, (void*)Axis_Create_"+attribs[i].getTypeName()+", (void*)Axis_Delete_"+attribs[i].getTypeName()+
- "\n\t\t, \""+attribs[i].getElementName().getLocalPart()+"\", Axis_URI_"+attribs[i].getTypeName()+");\n");
+ "\n\t\t, \""+attribs[i].getParamName()+"\", Axis_URI_"+attribs[i].getTypeName()+");\n");
}
}
writer.write("\treturn pIWSDZ->getStatus();\n");
1.16.2.1 +3 -2 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubHeaderWriter.java
Index: ClientStubHeaderWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubHeaderWriter.java,v
retrieving revision 1.16
retrieving revision 1.16.2.1
diff -u -r1.16 -r1.16.2.1
--- ClientStubHeaderWriter.java 25 Jun 2004 08:58:58 -0000 1.16
+++ ClientStubHeaderWriter.java 8 Jul 2004 13:00:29 -0000 1.16.2.1
@@ -166,7 +166,8 @@
protected void writePreprocssorStatements() throws WrapperFault {
try{
writer.write("#include <axis/client/Stub.h>\n");
- writer.write("#include <axis/AxisGenException.h>\n");
+ writer.write("#include <axis/ISoapFault.h>\n");
+ writer.write("#include \"AxisClientException.h\"\n");
Type atype;
Iterator types = this.wscontext.getTypemap().getTypes().iterator();
HashSet typeSet = new HashSet();
@@ -181,7 +182,7 @@
writer.write("#include \""+itr.next().toString()+".h\"\n");
}
// Method to print the Fault Exception headers
- writeFaultHeaders();
+ //writeFaultHeaders();
writer.write("\n");
}catch (IOException e) {
e.printStackTrace();
1.32.2.1 +37 -46 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java
Index: ClientStubWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java,v
retrieving revision 1.32
retrieving revision 1.32.2.1
diff -u -r1.32 -r1.32.2.1
--- ClientStubWriter.java 25 Jun 2004 08:58:58 -0000 1.32
+++ ClientStubWriter.java 8 Jul 2004 13:00:29 -0000 1.32.2.1
@@ -264,14 +264,10 @@
}
}
String channelSecurityType = (WrapperConstants.CHANNEL_SECURITY_SSL.equals(wscontext.getWrapInfo().getChannelSecurity()))?
- "SSL_CHANNEL" : "NORMAL_CHANNEL";
- //begin added Nithya
- writer.write("\tchar* cFaultcode;\n");//damitha added \t
- writer.write("\tchar* cFaultstring;\n");//damitha \t
- writer.write("\tchar* cFaultactor;\n");//damitha \t
- writer.write("\tchar* cFaultdetail;\n");//damitha \t
- writer.write("\ttry\n\t{");//damitha \n
- //ended by nithya
+ "SSL_CHANNEL" : "NORMAL_CHANNEL";
+ writer.write("\tconst char* pcCmplxFaultName;\n");
+ writer.write("\ttry\n\t{");
+
writer.write("\tif (AXIS_SUCCESS != m_pCall->initialize(CPP_DOC_PROVIDER, "+channelSecurityType+")) return ");
if (returntype != null){
writer.write((returntypeisarray?"RetArray":returntypeissimple?"Ret":"pReturn")+";\n\t");
@@ -434,31 +430,29 @@
writer.write("\t\tif(AXISC_NODE_VALUE_MISMATCH_EXCEPTION != iExceptionCode)\n");
writer.write("\t\t{\n");
writer.write("\t\t\tthrow;\n");
- writer.write("\t\t}\n");
- writer.write("\t\telse if (AXIS_SUCCESS == m_pCall->checkFault(\"Fault\",\""+wscontext.getWrapInfo().getTargetEndpointURI()+"\" ))");
- writer.write("//Exception handling code goes here\n");
- writer.write("\t\t{\n");
- writer.write("\t\t\tcFaultcode = m_pCall->getElementAsString(\"faultcode\", 0);\n");
- writer.write("\t\t\tcFaultstring = m_pCall->getElementAsString(\"faultstring\", 0);\n");
- writer.write("\t\t\tcFaultactor = m_pCall->getElementAsString(\"faultactor\", 0);\n");
+ writer.write("\t\t}\n");
+ writer.write("\t\tISoapFault* pSoapFault = (ISoapFault*) m_pCall->checkFault(\"Fault\",\""+wscontext.getWrapInfo().getTargetEndpointURI()+"\" );\n");
+ writer.write("\t\tif(pSoapFault)\n");
+ writer.write("\t\t{\n");
//to get fault info
- Iterator paramsFault = minfo.getFaultType().iterator();
- String faultInfoName =null;
- String faultType =null;
- String langName =null;
- String paramName =null;
- boolean flag =false;
- int j =0;
- if (!paramsFault.hasNext())
- {
- writer.write("\t\t\tcFaultdetail = m_pCall->getElementAsString(\"faultdetail\", 0);\n");
- writer.write("\t\t\tthrow AxisGenException(cFaultdetail);\n");
- }
- else
- {
- flag =true;
- }
+ Iterator paramsFault = minfo.getFaultType().iterator();
+ String faultInfoName =null;
+ String faultType =null;
+ String langName =null;
+ String paramName =null;
+ boolean flag =false;
+ int j =0;
+ if (!paramsFault.hasNext())
+ {
+ writer.write("\t\t\tm_pCall->unInitialize();\n");
+ writer.write("\t\t\tthrow AxisClientException(pSoapFault);\n");
+ }
+ else
+ {
+ flag =true;
+ writer.write("\t\t\tpcCmplxFaultName = pSoapFault->getCmplxFaultObjectName().c_str();\n");
+ }
while (paramsFault.hasNext()){
j =j+1;
FaultInfo info = (FaultInfo)paramsFault.next();
@@ -483,8 +477,8 @@
if (flag ==true)
{
writer.write("\t\t\telse\n\t\t\t{\n");
- writer.write("\t\t\t\t cFaultdetail = m_pCall->getElementAsString(\"faultdetail\", 0);\n");
- writer.write("\t\t\t\t throw AxisGenException(cFaultdetail);\n");
+ writer.write("\t\t\t\t m_pCall->unInitialize();\n");
+ writer.write("\t\t\t\t throw AxisClientException(pSoapFault);\n");
writer.write("\t\t\t}\n");
}
writer.write("\t\t}\n");
@@ -495,19 +489,16 @@
private void writeExceptions(String faulttype,String faultInfoName,String paramName,String langName) throws WrapperFault{
try{
- writer.write("\t\t\tif(0 == strcmp(\""+langName+"\", cFaultstring))\n");
- writer.write("\t\t\t{\n");
- writer.write("\t\t\t\tif (AXIS_SUCCESS == m_pCall->checkFault(\"faultdetail\",\""+wscontext.getWrapInfo().getTargetEndpointURI()+"\"))\n");
- writer.write("\t\t\t\t{\n");
- writer.write("\t\t\t\t\t"+faulttype+" pFaultDetail = NULL;\n");
- writer.write("\t\t\t\t\tpFaultDetail = ("+faulttype+")m_pCall->\n");
- writer.write("\t\t\t\t\t\tgetCmplxObject((void*) Axis_DeSerialize_"+langName+",\n");
- writer.write("\t\t\t\t\t\t(void*) Axis_Create_"+langName+",\n");
- writer.write("\t\t\t\t\t\t(void*) Axis_Delete_"+langName+",\""+paramName+"\", 0);\n");
- writer.write("\t\t\t\t\t/*User code to handle the struct can be inserted here*/\n");
- writer.write("\t\t\t\t\tm_pCall->unInitialize();\n");
- writer.write("\t\t\t\t\tthrow Axis"+faultInfoName+"Exception(pFaultDetail);\n");
- writer.write("\t\t\t\t}\n");
+ writer.write("(0 == strcmp(\""+faultInfoName+"\", pcCmplxFaultName))\n");
+ writer.write("\t\t\t{\n");
+ writer.write("\t\t\t\t"+faulttype+" pFaultDetail = NULL;\n");
+ writer.write("\t\t\t\tpFaultDetail = ("+faulttype+")pSoapFault->\n");
+ writer.write("\t\t\t\t\tgetCmplxFaultObject((void*) Axis_DeSerialize_"+langName+",\n");
+ writer.write("\t\t\t\t\t(void*) Axis_Create_"+langName+",\n");
+ writer.write("\t\t\t\t\t(void*) Axis_Delete_"+langName+",\""+faultInfoName+"\", 0);\n");
+ writer.write("\t\t\t\tpSoapFault->setCmplxFaultObject(pFaultDetail);\n");
+ writer.write("\t\t\t\tm_pCall->unInitialize();\n");
+ writer.write("\t\t\t\tthrow AxisClientException(pSoapFault);\n");
writer.write("\t\t\t}\n");
}
catch (IOException e) {