Need help with Axis 1.0 to Axis 2 Migration
Debra Petta <[email protected]> Fri, 31 Jan 2025 21:14:43 +0000
| Newsgroups | gmane.text.xml.axis.user |
|---|---|
| Message-ID | <DM4PR11MB64087786C7D48009F99DE2D0CCE82@DM4PR11MB6408.namprd11.prod.outlook.com> |
--_000_DM4PR11MB64087786C7D48009F99DE2D0CCE82DM4PR11MB6408namp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Hi Everyone -
I am in the process of attempting to convert my Axis 1.0 application to Axi=
s 2 (version 1.8.2). I have been reviewing the User Guide and the related d=
ocumentation for Axis 2 for several weeks now, however I couldn't find any =
documentation that addresses my specific questions, so I hope someone in th=
is group can assist me.
Basically, my current Axis 1.0 application has a server implementation and =
an interface that is converted into client-side code. The client then make=
s RPC calls to specific methods through the generated client stubs.
My deploy.wsdd file (snippet below) contains several <beanMapping> elements=
for my custom return types, so it is my assumption that I need to use xmlb=
ean data binding.
<deployment
xmlns=3Dhttp://xml.apache.org/axis/wsdd/
xmlns:java=3Dhttp://xml.apache.org/axis/wsdd/providers/java
>
<service
name=3D"VendorSvc"
provider=3D"java:RPC"
>
<parameter name=3D"className" value=3D"com.=
dgi.insitusvc.ws.VendorSvcWS"/>
<parameter name=3D"allowedMethods" value=3D=
"*"/>
<beanMapping qname=3D"dgiNS:GenericResult" =
xmlns:dgiNS=3D"urn:vendorsvc.dgi.com" languageSpecificType=3D"java:c=
om.dgi.insitusvc.itf.GenericResult"/>
...
[snip]
Based on these assumptions, I converted my java2wsdl ant task
from:
<echo message=3D"Generating WSDL files from server Java classes..."/=
>
<java fork=3D"yes" classname=3D"org.apache.axis.wsdl.Java2WSDL">
<arg line=3D'
-o server/src/wsdl-gen/vendorsvc.wsdl
-l http://localhost:8080/axis/services/VendorSvc
-n "urn:com.dgi.vendorsvc"
-p "com.dgi.insitusvc.itf" "urn:vendorsvc.dgi.com"
com.dgi.insitusvc.ws.VendorSvcWS'/>
<classpath>
<pathelement location=3D"build/classes"/>
<pathelement location=3D"../externlib/axis.jar"/>
<pathelement location=3D"../externlib/commons-discovery.jar=
"/>
<pathelement location=3D"../externlib/commons-logging.jar"/=
>
<pathelement location=3D"../externlib/wsdl4j.jar"/>
<pathelement location=3D"../externlib/jaxrpc-api.jar"/>
<pathelement location=3D"../externlib/xsdlib.jar"/>
<pathelement location=3D"../externlib/saaj.jar"/>
</classpath>
</java>
to:
<echo message=3D"Generating WSDL files from server Java classes..."=
/>
<java fork=3D"yes" classname=3D"org.apache.ws.java2wsdl.Java2WSDL">
<arg line=3D'
-o server/src/wsdl-gen
-l http://localhost:8080/axis2/services/VendorSvc
-tn "urn:com.dgi.vendorsvc"
-p2n [com.dgi.insitusvc.itf,urn:vendorsvc.dgi.com]
-cn com.dgi.insitusvc.ws.VendorSvcWS
-xc com.dgi.insitusvc.itf.ParticipantVO
-xc com.dgi.insitusvc.itf.PhaseVO
-xc com.dgi.insitusvc.itf.TestCaseInstanceVO
-xc com.dgi.insitusvc.itf.TestCasesVO
-xc com.dgi.insitusvc.itf.TestCaseOverviewVO
-wv 1.1
-st rpc
-sn VendorSvc'/>
<classpath>
<pathelement location=3D"build/classes"/>
<fileset dir=3D"externlib" includes=3D"*.jar"/>
</classpath>
</java>
Running the updated task creates a VendorSvcWS.wsdl file with the schema de=
finitions for all the complex types, message/parameter elements, operations=
and bindings.
I then converted the wsdl2java ant task
from:
<echo message=3D"Generating client Java classes from server WSDL fil=
es..."/>
<java fork=3D"yes" classname=3D"org.apache.axis.wsdl.WSDL2Java">
<arg line=3D'-p com.dgi.client.vendorsvc -o client/src/java-gen=
server/src/wsdl-gen/vendorsvc.wsdl'/>
<classpath>
<pathelement location=3D"../externlib/axis.jar"/>
<pathelement location=3D"../externlib/commons-discovery.jar=
"/>
<pathelement location=3D"../externlib/commons-logging.jar"/=
>
<pathelement location=3D"../externlib/wsdl4j.jar"/>
<pathelement location=3D"../externlib/jaxrpc-api.jar"/>
<pathelement location=3D"../externlib/xsdlib.jar"/>
<pathelement location=3D"../externlib/saaj.jar"/>
</classpath>
</java>
to:
<echo message=3D"Generating client Java classes from server WSDL fil=
es..."/>
<java fork=3D"yes" classname=3D"org.apache.axis2.wsdl.WSDL2Java">
<arg line=3D'
-uri server/src/wsdl-gen/VendorSvcWS.wsdl
-d xmlbeans
-p com.dgi.client.vendorsvc
-o client/src/java-gen
-ssi
-uw'/>
<classpath>
<fileset dir=3D"externlib" includes=3D"*.jar"/>
</classpath>
</java>
When I run the converted wsdl2java task, this exception information is logg=
ed:
wsdl2java:
[echo] Generating client Java classes from server WSDL files...
[java] Retrieving document at 'server/src/wsdl-gen/VendorSvcWS.wsdl'.
[java] Exception in thread "main" org.apache.axis2.wsdl.codegen.CodeGe=
nerationException: Error parsing WSDL
[java] at org.apache.axis2.wsdl.codegen.CodeGenConfiguration.loadW=
sdl(CodeGenConfiguration.java:748)
[java] at org.apache.axis2.wsdl.codegen.CodegenConfigLoader.loadCo=
nfig(CodegenConfigLoader.java:328)
[java] at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:53)
[java] at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)
[java] Caused by: org.apache.axis2.AxisFault: The binding operation va=
lidateParticipant is RPC/literal. The message parts for this operation must=
use the type attribute as specificed by WS-I Basic Profile specification (=
4.4.1). Message part, parameters, violatesthis rule. Please remove the el=
ement attribute and use the type attribute.
[java] at org.apache.axis2.AxisFault.makeFault(AxisFault.java:431)
[java] at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.=
populateService(WSDL11ToAxisServiceBuilder.java:408)
[java] at org.apache.axis2.description.WSDL11ToAllAxisServicesBuil=
der.populateAllServices(WSDL11ToAllAxisServicesBuilder.java:107)
[java] at org.apache.axis2.wsdl.codegen.CodeGenConfiguration.loadW=
sdl(CodeGenConfiguration.java:742)
[java] ... 3 more
[java] Caused by: org.apache.axis2.description.WSDL11ToAxisServiceBuil=
der$WSDLProcessingException: The binding operation validateParticipant is R=
PC/literal. The message parts for this operation must use the type attribut=
e as specificed by WS-I Basic Profile specification (4.4.1). Message part,=
parameters, violatesthis rule. Please remove the element attribute and us=
e the type attribute.
[java] at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.=
addPartToElement(WSDL11ToAxisServiceBuilder.java:2252)
[java] at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.=
getNewComplextType(WSDL11ToAxisServiceBuilder.java:2110)
[java] at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.=
createSchemaForPorttype(WSDL11ToAxisServiceBuilder.java:1760)
[java] at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.=
generateWrapperSchema(WSDL11ToAxisServiceBuilder.java:1648)
[java] at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.=
populateService(WSDL11ToAxisServiceBuilder.java:352)
[java] ... 5 more
[java] Java Result: 1
I have pasted all references to the 'validateParticipant' from the WSDL be=
low:
From the schema section:
<xs:element name=3D"validateParticipant">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs=3D"0" name=3D"data" nillable=
=3D"true" type=3D"ax22:ParticipantFullVO"/>
<xs:element name=3D"useHtmlBreaks" type=3D"xs:boole=
an"/>
<xs:element name=3D"forceCheck" type=3D"xs:boolean"=
/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name=3D"validateParticipantResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs=3D"0" name=3D"return" nillabl=
e=3D"true" type=3D"xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Messages:
<wsdl:message name=3D"validateParticipantRequest">
<wsdl:part name=3D"parameters" element=3D"ns:validateParticipant"/>
</wsdl:message>
<wsdl:message name=3D"validateParticipantResponse">
<wsdl:part name=3D"parameters" element=3D"ns:validateParticipantRes=
ponse"/>
</wsdl:message>
Operation:
<wsdl:operation name=3D"validateParticipant">
<wsdl:input message=3D"tns:validateParticipantRequest" wsaw:Act=
ion=3D"urn:validateParticipant"/>
<wsdl:output message=3D"tns:validateParticipantResponse" wsaw:A=
ction=3D"urn:validateParticipantResponse"/>
</wsdl:operation>
<wsdl:operation name=3D"validateParticipant">
<soap:operation soapAction=3D"urn:validateParticipant" style=3D=
"rpc"/>
<wsdl:input>
<soap:body use=3D"literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use=3D"literal"/>
</wsdl:output>
</wsdl:operation>
From what I can tell, it appears that the above stack trace requires some s=
ort of manual intervention to convert the highlighted 'element' parameter t=
o 'type', however I have no idea how to resolve this issue since my hope wa=
s that the process of generating the WSDL and the client classes would be a=
utomated through ant.
Is it possible that I generated the WSDL incorrectly or have called the WSD=
L2Java with incorrect parameters?
I did try to generate the source code using 'mvn clean install' (using Mave=
n 3.9.2) to see if I can figure out where it is failing however, I cannot g=
et past the plug-in exceptions even after following the instructions in the=
readme to build the plugins individually.
Thank you for whatever advice that you can provide.
-Debra
--_000_DM4PR11MB64087786C7D48009F99DE2D0CCE82DM4PR11MB6408namp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ligatures:standardcontextual;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:11.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"blue" vlink=3D"purple" style=3D"word-wrap:brea=
k-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Hi Everyone –<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">I am in the process of attempting to convert my Axis=
1.0 application to Axis 2 (version 1.8.2). I have been reviewing the User =
Guide and the related documentation for Axis 2 for several weeks now, howev=
er I couldn’t find any documentation
that addresses my specific questions, so I hope someone in this group can =
assist me.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">Basically, my current Axis 1.0 application has a ser=
ver implementation and an interface that is converted into client-side code=
. The client then makes RPC calls to specific methods through the gen=
erated client stubs.<o:p></o:p></p>
<p class=3D"MsoNormal">My deploy.wsdd file (snippet below) contains several=
<beanMapping> elements for my custom return types, so it is my assum=
ption that I need to use xmlbean data binding.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal"><deployment<o:p></o:p></p>
<p class=3D"MsoNormal"> xmlns=3D<a href=3D"http://xml.apache.org/axis=
/wsdd/">http://xml.apache.org/axis/wsdd/</a><o:p></o:p></p>
<p class=3D"MsoNormal"> xmlns:java=3D<a href=3D"http://xml.apache.org=
/axis/wsdd/providers/java">http://xml.apache.org/axis/wsdd/providers/java</=
a><o:p></o:p></p>
<p class=3D"MsoNormal">><o:p> </o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <service<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; name=3D"VendorSvc"<=
o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; provider=3D"java:RPC&quo=
t;<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; ><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <parameter n=
ame=3D"className" value=3D"com.dgi.insitusvc.ws.VendorSvcWS&=
quot;/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <parameter n=
ame=3D"allowedMethods" value=3D"*"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <beanMapping=
qname=3D"dgiNS:GenericResult"  =
; xmlns:dgiNS=3D"urn:vendorsvc.dgi.com" languageSpecificTyp=
e=3D"java:com.dgi.insitusvc.itf.GenericResult"/><o:p></o:p></p=
>
<p class=3D"MsoNormal">...<o:p></o:p></p>
<p class=3D"MsoNormal">[snip]<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">Based on these assumptions, I converted my java2wsdl=
ant task
<o:p></o:p></p>
<p class=3D"MsoNormal">from:<o:p></o:p></p>
<p class=3D"MsoNormal"> <echo messag=
e=3D"Generating WSDL files from server Java classes..."/><o:p>=
</o:p></p>
<p class=3D"MsoNormal"> <java =
fork=3D"yes" classname=3D"org.apache.axis.wsdl.Java2WSDL&quo=
t;><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <arg line=3D'<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -o server/src/wsdl-gen/v=
endorsvc.wsdl <o:p>
</o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -l <a href=3D"http:=
//localhost:8080/axis/services/VendorSvc">
http://localhost:8080/axis/services/VendorSvc</a> <o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -n "urn:com.dgi.vend=
orsvc" <o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -p "com.dgi.insitusv=
c.itf" "urn:vendorsvc.dgi.com"
<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; com.dgi.insitusvc.ws.Vend=
orSvcWS'/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"bui=
ld/classes"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/axis.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/commons-discovery.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/commons-logging.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/wsdl4j.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/jaxrpc-api.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/xsdlib.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/saaj.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> </java=
><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">to:<o:p></o:p></p>
<p class=3D"MsoNormal"> <echo =
message=3D"Generating WSDL files from server Java classes..."/>=
;<o:p></o:p></p>
<p class=3D"MsoNormal"> <java =
fork=3D"yes" classname=3D"org.apache.ws.java2wsdl.Java2WSDL&=
quot;><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <arg line=3D'<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -o server/src/wsdl-gen<o:p></o=
:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -l <a href=3D"http://localhost=
:8080/axis2/services/VendorSvc">
http://localhost:8080/axis2/services/VendorSvc</a> <o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -tn "urn:com.dgi.ven=
dorsvc" <o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -p2n [com.dgi.insitusvc.i=
tf,urn:vendorsvc.dgi.com]
<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -cn com.dgi.insitusvc.ws.=
VendorSvcWS<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -xc com.dgi.insitusvc.itf.Part=
icipantVO<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -xc com.dgi.insitusvc.itf.Phas=
eVO<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -xc com.dgi.insitusvc.itf.Test=
CaseInstanceVO<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -xc com.dgi.insitusvc.itf.Test=
CasesVO<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -xc com.dgi.insitusvc.itf.Test=
CaseOverviewVO<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -wv 1.1<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -st rpc<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -sn VendorSvc'/><o:p></o:p>=
</p>
<p class=3D"MsoNormal"> &nbs=
p; <classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"bui=
ld/classes"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <fileset dir=3D"externlib&qu=
ot; includes=3D"*.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> </java=
><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">Running the updated task creates a VendorSvcWS.wsdl =
file with the schema definitions for all the complex types, message/paramet=
er elements, operations and bindings.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">I then converted the wsdl2java ant task <o:p></o:p><=
/p>
<p class=3D"MsoNormal">from:<o:p></o:p></p>
<p class=3D"MsoNormal"> <echo messag=
e=3D"Generating client Java classes from server WSDL files..."/&g=
t;<o:p></o:p></p>
<p class=3D"MsoNormal"> <java =
fork=3D"yes" classname=3D"org.apache.axis.wsdl.WSDL2Java&quo=
t;><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <arg line=3D'-p com.dgi.client.vendorsvc -o client/src/ja=
va-gen server/src/wsdl-gen/vendorsvc.wsdl'/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/axis.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/commons-discovery.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/commons-logging.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/wsdl4j.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/jaxrpc-api.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/xsdlib.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <pathelement location=3D"../=
externlib/saaj.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> </java=
><o:p></o:p></p>
<p class=3D"MsoNormal">to:<o:p></o:p></p>
<p class=3D"MsoNormal"> <echo messag=
e=3D"Generating client Java classes from server WSDL files..."/&g=
t;<o:p></o:p></p>
<p class=3D"MsoNormal"> <java =
fork=3D"yes" classname=3D"org.apache.axis2.wsdl.WSDL2Java&qu=
ot;><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <arg line=3D'<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -uri server/src/wsdl-gen/Vendo=
rSvcWS.wsdl<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -d xmlbeans<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -p com.dgi.client.vendorsvc <o=
:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -o client/src/java-gen<o:=
p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -ssi<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; -uw'/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <fileset dir=3D"externlib&qu=
ot; includes=3D"*.jar"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </classpath><o:p></o:p></p>
<p class=3D"MsoNormal"> </java=
><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">When I run the converted wsdl2java task, this except=
ion information is logged:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">wsdl2java:<o:p></o:p></p>
<p class=3D"MsoNormal"> [echo] Generating client Ja=
va classes from server WSDL files...<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] Retrieving document =
at 'server/src/wsdl-gen/VendorSvcWS.wsdl'.<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] Exception in thread =
"main" org.apache.axis2.wsdl.codegen.CodeGenerationException: Err=
or parsing WSDL<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.wsdl.codegen.CodeGenConfiguration.loadWsdl(CodeGenC=
onfiguration.java:748)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.wsdl.codegen.CodegenConfigLoader.loadConfig(Codegen=
ConfigLoader.java:328)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:53)<o:p></o:p></=
p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)<o:p></o:p></=
p>
<p class=3D"MsoNormal"> [java] Caused by: org.apach=
e.axis2.AxisFault: The binding operation validateParticipant is RPC/literal=
. The message parts for this operation must use the type attribute as speci=
ficed by WS-I Basic Profile specification (4.4.1). Message
part, parameters, violatesthis rule. Please remove the element attri=
bute and use the type attribute.<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.AxisFault.makeFault(AxisFault.java:431)<o:p></o:p><=
/p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateServ=
ice(WSDL11ToAxisServiceBuilder.java:408)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAllAxisServicesBuilder.populate=
AllServices(WSDL11ToAllAxisServicesBuilder.java:107)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.wsdl.codegen.CodeGenConfiguration.loadWsdl(CodeGenC=
onfiguration.java:742)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; ... 3 more<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] Caused by: org.apach=
e.axis2.description.WSDL11ToAxisServiceBuilder$WSDLProcessingException: The=
binding operation validateParticipant is RPC/literal. The message parts fo=
r this operation must use the type attribute as specificed
by WS-I Basic Profile specification (4.4.1). Message part, parameter=
s, violatesthis rule. Please remove the element attribute and use the=
type attribute.<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.addPartToEle=
ment(WSDL11ToAxisServiceBuilder.java:2252)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.getNewComple=
xtType(WSDL11ToAxisServiceBuilder.java:2110)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.createSchema=
ForPorttype(WSDL11ToAxisServiceBuilder.java:1760)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.generateWrap=
perSchema(WSDL11ToAxisServiceBuilder.java:1648)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateServ=
ice(WSDL11ToAxisServiceBuilder.java:352)<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] &nb=
sp; ... 5 more<o:p></o:p></p>
<p class=3D"MsoNormal"> [java] Java Result: 1<o:p><=
/o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">I have pasted all references to the ‘val=
idateParticipant’ from the WSDL below:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal"><u>From the schema section:<o:p></o:p></u></p>
<p class=3D"MsoNormal"> <xs:el=
ement name=3D"validateParticipant"><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <xs:complexType><o:p></o:p></p=
>
<p class=3D"MsoNormal"> &nbs=
p; <xs:seque=
nce><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <xs:element minOccurs=3D"0" name=3D"data"=
; nillable=3D"true" type=3D"ax22:ParticipantFullVO"/>=
;<o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <xs:element name=3D"useHtmlBreaks" type=3D"xs=
:boolean"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <xs:element name=3D"forceCheck" type=3D"xs:bo=
olean"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </xs:sequ=
ence><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </xs:complexType><o:p></o:p></=
p>
<p class=3D"MsoNormal"> &nbs=
p; </xs:element><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <xs:element name=3D"validateParticipantResponse"=
;><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <xs:complexType><o:p></o:p></p=
>
<p class=3D"MsoNormal"> &nbs=
p; <xs:seque=
nce><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; &=
nbsp; <xs:element minOccurs=3D"0" name=3D"return&qu=
ot; nillable=3D"true" type=3D"xs:string"/><o:p></o:p=
></p>
<p class=3D"MsoNormal"> &nbs=
p; </xs:sequ=
ence><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </xs:complexType><o:p></o:p></=
p>
<p class=3D"MsoNormal"> &nbs=
p; </xs:element><o:p></o:p></p>
<p class=3D"MsoNormal"> <o:p></o:p></p>
<p class=3D"MsoNormal"><u>Messages:<o:p></o:p></u></p>
<p class=3D"MsoNormal"> <wsdl:message name=3D"val=
idateParticipantRequest"><o:p></o:p></p>
<p class=3D"MsoNormal"> <wsdl:=
part name=3D"parameters" <span style=3D"background:yellow;mso-hig=
hlight:yellow">
element</span>=3D"ns:validateParticipant"/><o:p></o:p></p>
<p class=3D"MsoNormal"> </wsdl:message><o:p></o:p><=
/p>
<p class=3D"MsoNormal"> <wsdl:message name=3D"val=
idateParticipantResponse"><o:p></o:p></p>
<p class=3D"MsoNormal"> <wsdl:=
part name=3D"parameters" <span style=3D"background:yellow;mso-hig=
hlight:yellow">
element</span>=3D"ns:validateParticipantResponse"/><o:p></o:p>=
</p>
<p class=3D"MsoNormal"> </wsdl:message><o:p></o:p><=
/p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal"><u>Operation</u>:<o:p></o:p></p>
<p class=3D"MsoNormal"> <wsdl:=
operation name=3D"validateParticipant"><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <wsdl:input message=3D"tns:validateParticipantReques=
t" wsaw:Action=3D"urn:validateParticipant"/><o:p></o:p></=
p>
<p class=3D"MsoNormal"> &nbs=
p; <wsdl:output message=3D"tns:validateParticipantRespo=
nse" wsaw:Action=3D"urn:validateParticipantResponse"/><o:=
p></o:p></p>
<p class=3D"MsoNormal"> </wsdl=
:operation><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal"> <wsdl:operation na=
me=3D"validateParticipant"><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <soap:operation soapAction=3D"urn:validateParticipan=
t" style=3D"rpc"/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <wsdl:input><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <soap:body use=3D"literal&qu=
ot;/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </wsdl:input><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <wsdl:output><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; <soap:body use=3D"literal&qu=
ot;/><o:p></o:p></p>
<p class=3D"MsoNormal"> &nbs=
p; </wsdl:output><o:p></o:p></p>
<p class=3D"MsoNormal"> </wsdl=
:operation><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">From what I can tell, it appears that the above stac=
k trace requires some sort of manual intervention to convert the highlighte=
d ‘element’ parameter to ‘type’, however I have no =
idea how to resolve this issue since my hope was that the
process of generating the WSDL and the client classes would be automated t=
hrough ant.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">Is it possible that I generated the WSDL incorrectly=
or have called the WSDL2Java with incorrect parameters?
<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">I did try to generate the source code using ‘m=
vn clean install’ (using Maven 3.9.2) to see if I can figure out wher=
e it is failing however, I cannot get past the plug-in exceptions even afte=
r following the instructions in the readme to
build the plugins individually.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">Thank you for whatever advice that you can provide.<=
o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">-Debra<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>
--_000_DM4PR11MB64087786C7D48009F99DE2D0CCE82DM4PR11MB6408namp_--