Hi Guys,

 

I'm trying desperately to familiarize myself with Axis2 and I'm stuck on the
part in the process that requires me to first create a WSDL file for my
project.  I've downloaded XMLSpy to create my WSDL file which is attached.
When I test it for validity in XMLSpy, it is fine.  But WSDL2Java.jar
doesn't agree.  This is the command I use:

 

C:\axis2-1.6.2\samples\pnskeywords>%AXIS2_HOME%\bin\WSDL2Java -uri
keyword.wsdl

-p com.personalnetsearch.plugin.keys.axis2 -d adb -s

 

This is the result:

 

Using AXIS2_HOME:   C:\axis2-1.6.2

Using JAVA_HOME:    C:\Program Files\Java\jdk1.7.0_05

Retrieving document at 'keyword.wsdl'.

log4j:WARN No appenders could be found for logger
(org.apache.axis2.description.

WSDL11ToAllAxisServicesBuilder).

log4j:WARN Please initialize the log4j system properly.

Exception in thread "main"
org.apache.axis2.wsdl.codegen.CodeGenerationException

: Error parsing WSDL

        at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerat

ionEngine.java:175)

        at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:35)

        at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)

Caused by: org.apache.axis2.AxisFault: More than one part for message
KeywordLis

tInput

        at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateServi

ce(WSDL11ToAxisServiceBuilder.java:411)

        at
org.apache.axis2.description.WSDL11ToAllAxisServicesBuilder.populateA

llServices(WSDL11ToAllAxisServicesBuilder.java:107)

        at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerat

ionEngine.java:169)

        ... 2 more

Caused by:
org.apache.axis2.description.WSDL11ToAxisServiceBuilder$WSDLProcessin

gException: More than one part for message KeywordListInput

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.addQNameRefer

ence(WSDL11ToAxisServiceBuilder.java:1294)

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.addQNameRefer

ence(WSDL11ToAxisServiceBuilder.java:1217)

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateBindi

ng(WSDL11ToAxisServiceBuilder.java:731)

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateEndpo

int(WSDL11ToAxisServiceBuilder.java:552)

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateEndpo

ints(WSDL11ToAxisServiceBuilder.java:503)

        at
org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateServi

ce(WSDL11ToAxisServiceBuilder.java:373)

        ... 4 more

 

I don't understand why it has a problem with my having two parts for message
KeywordListInput?  That's what it is supposed to have.  It is supposed to
take to int parameters, just like CategoryListInput.   Could somebody please
explain what's wrong.

 

Alan Shiers

 

 

<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2012 rel. 2 sp1 (http://www.altova.com) by Alan Shiers (Tactical Enterprises Ltd.) -->
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"; xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:tns="http://www.personalnetsearch.com/axis2/KeywordService"; targetNamespace="http://www.personalnetsearch.com/axis2/KeywordService";>
	<wsdl:types>
		<xsi:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema"; targetNamespace="http://www.personalnetsearch.com/axis2/KeywordService"; elementFormDefault="qualified">
			<xsi:element name="ListItem">
				<xsi:complexType>
					<xsi:sequence>
						<xsi:element name="ItemID" type="soapenc:integer"/>
						<xsi:element name="ItemName" type="soapenc:string"/>
					</xsi:sequence>
				</xsi:complexType>
			</xsi:element>
			<xsi:element name="ArrayOfListItem">
				<xsi:complexType>
					<xsi:sequence>
						<xsi:element ref="tns:ListItem" minOccurs="0" maxOccurs="unbounded"/>
					</xsi:sequence>
				</xsi:complexType>
			</xsi:element>
		</xsi:schema>
	</wsdl:types>
	<wsdl:message name="IndustryListInput">
		<wsdl:part name="languageID" type="xs:int"/>
	</wsdl:message>
	<wsdl:message name="IndustryListOutput">
		<wsdl:part name="ListItemArray" element="tns:ArrayOfListItem"/>
	</wsdl:message>
	<wsdl:message name="CategoryListInput">
		<wsdl:part name="languageID" type="xs:int"/>
		<wsdl:part name="industryID" type="xs:int"/>
	</wsdl:message>
	<wsdl:message name="CategoryListOutput">
		<wsdl:part name="ListItemArray" element="tns:ArrayOfListItem"/>
	</wsdl:message>
	<wsdl:message name="KeywordListInput">
		<wsdl:part name="languageID" type="xs:int"/>
		<wsdl:part name="categoryID" type="xs:int"/>
	</wsdl:message>
	<wsdl:message name="KeywordListOutput">
		<wsdl:part name="keywordsList" type="xs:string"/>
	</wsdl:message>
	<wsdl:portType name="IndustryListRequest">
		<wsdl:operation name="getIndustryList">
			<wsdl:input message="tns:IndustryListInput"/>
			<wsdl:output message="tns:IndustryListOutput"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:portType name="CategoryListRequest">
		<wsdl:operation name="getCategoryList">
			<wsdl:input message="tns:CategoryListInput"/>
			<wsdl:output message="tns:CategoryListOutput"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:portType name="KeywordListRequest">
		<wsdl:operation name="getKeywordList">
			<wsdl:input message="tns:KeywordListInput"/>
			<wsdl:output message="tns:KeywordListOutput"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="IndustryListBinding" type="tns:IndustryListRequest">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="getIndustryList">
			<soap:operation soapAction="urn:#getIndustryList"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="CategoryListBinding" type="tns:CategoryListRequest">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="getCategoryList">
			<soap:operation soapAction="urn:#getCategoryList"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:binding name="KeywordListBinding" type="tns:KeywordListRequest">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="getKeywordList">
			<soap:operation soapAction="urn:#getKeywordList"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="Axis2KeywordService">
		<wsdl:port name="IndustryListPort" binding="tns:IndustryListBinding">
			<soap:address location="http://www.personalnetsearch.com/axis2/KeywordService"/>
		</wsdl:port>
		<wsdl:port name="CategoryListPort" binding="tns:CategoryListBinding">
			<soap:address location="http://www.personalnetsearch.com/axis2/KeywordService"/>
		</wsdl:port>
		<wsdl:port name="KeywordListPort" binding="tns:KeywordListBinding">
			<soap:address location="http://www.personalnetsearch.com/axis2/KeywordService"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@axis.apache.org
For additional commands, e-mail: java-user-h...@axis.apache.org

Reply via email to