You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Ivan Venuti <i_...@yahoo.it> on 2005/04/19 20:21:32 UTC
Bug in axis or wrong WSDL file?
Hi,
I have simplified my WSDL and I have obtained the
simplest WSDL that SHOULD describe a wrapped/literal
service (only 1 operation and no own complexTypes!).
Unfortunatly Axis doesn't recorgnise it as wrapped
WSDL (infact I obtain a deploy.wsdd with document
style).
I have looked at it again and again. If someone can
give a look at it and give me some direction to find a
solution I would be really glad.
Maybe this is a little bug in Axis??
Thanks!
-- Ivan
Here is my WSDL:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
name="ProductsExampleWS"
targetNamespace="http://ivenuti.altervista.org/ProductsExampleWS.wsdl"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://ivenuti.altervista.org/ProductsExampleWS.wsdl"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsd1="http://ivenuti.altervista.org/ProductsExampleWS.xsd1">
<wsdl:types>
<xsd:schema
targetNamespace="http://ivenuti.altervista.org/ProductsExampleWS.xsd1"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsd1="http://ivenuti.altervista.org/ProductsExampleWS.xsd1">
<xsd:element name="confirmationOrder"
type="xsd:string"/>
<xsd:element
name="confirmationOrderResponse" type="xsd:boolean"/>
</xsd:schema>
</wsdl:types>
<wsdl:message name="confirmationOrder">
<wsdl:part element="xsd1:confirmationOrder"
name="paramIn"/>
</wsdl:message>
<wsdl:message name="confirmationOrderResponse">
<wsdl:part
element="xsd1:confirmationOrderResponse"
name="paramOut"/>
</wsdl:message>
<wsdl:portType name="ProductsExampleWSPortType">
<wsdl:operation name="confirmationOrder">
<wsdl:input
message="tns:confirmationOrder"
name="messageConfirmationOrder"/>
<wsdl:output
message="tns:confirmationOrderResponse"
name="messageConfirmationOrderResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding
name="ProductsExampleWSBinding"
type="tns:ProductsExampleWSPortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="confirmationOrder">
<soap:operation
soapAction="capeconnect:ProductsExampleWS:ProductsExampleWSPortType#confirmationOrder"/>
<wsdl:input>
<soap:body parts="confirmationOrder"
use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body
parts="confirmationOrderResponse" use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="ProductsExampleWS">
<wsdl:port
binding="tns:ProductsExampleWSBinding"
name="ProductsExampleWSPort">
<soap:address
location="http://localhost:8080/axis/ProductsExampleWS"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
___________________________________
Nuovo Yahoo! Messenger: E' molto più divertente: Audibles, Avatar, Webcam, Giochi, Rubrica
Scaricalo ora!
http://it.messenger.yahoo.it
Re: Bug in axis or wrong WSDL file?
Posted by Anne Thomas Manes <at...@gmail.com>.
For wrapped/literal, your input element must be defined as a complex
type which is a sequence of your input parameters. You did not create
the proper wrapper element.
Here's what it is supposed to look like (I created names for your
input and output parameters [order and status], but you can use
whatever names you like).
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
name="ProductsExampleWS"
targetNamespace="http://ivenuti.altervista.org/ProductsExampleWS.wsdl"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://ivenuti.altervista.org/ProductsExampleWS.wsdl"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsd1="http://ivenuti.altervista.org/ProductsExampleWS.xsd1">
<wsdl:types>
<xsd:schema
targetNamespace="http://ivenuti.altervista.org/ProductsExampleWS.xsd1"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsd1="http://ivenuti.altervista.org/ProductsExampleWS.xsd1">
<xsd:element name="confirmationOrder">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="order" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="confirmationOrderResponse"
<xsd:complexType>
<xsd:sequence>
<xsd:element name="status" type="xsd:boolean"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:message name="confirmationOrder">
<wsdl:part element="xsd1:confirmationOrder" name="paramIn"/>
</wsdl:message>
<wsdl:message name="confirmationOrderResponse">
<wsdl:part element="xsd1:confirmationOrderResponse" name="paramOut"/>
</wsdl:message>
<wsdl:portType name="ProductsExampleWSPortType">
<wsdl:operation name="confirmationOrder">
<wsdl:input message="tns:confirmationOrder"
name="messageConfirmationOrder"/>
<wsdl:output message="tns:confirmationOrderResponse"
name="messageConfirmationOrderResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding
name="ProductsExampleWSBinding"
type="tns:ProductsExampleWSPortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="confirmationOrder">
<soap:operation
soapAction="capeconnect:ProductsExampleWS:ProductsExampleWSPortType#confirmationOrder"/>
<wsdl:input>
<soap:body parts="confirmationOrder" use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body parts="confirmationOrderResponse" use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="ProductsExampleWS">
<wsdl:port binding="tns:ProductsExampleWSBinding"
name="ProductsExampleWSPort">
<soap:address
location="http://localhost:8080/axis/ProductsExampleWS"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
On 4/19/05, Ivan Venuti <i_...@yahoo.it> wrote:
> Hi,
>
> I have simplified my WSDL and I have obtained the
> simplest WSDL that SHOULD describe a wrapped/literal
> service (only 1 operation and no own complexTypes!).
> Unfortunatly Axis doesn't recorgnise it as wrapped
> WSDL (infact I obtain a deploy.wsdd with document
> style).
>
> I have looked at it again and again. If someone can
> give a look at it and give me some direction to find a
> solution I would be really glad.
>
> Maybe this is a little bug in Axis??
>
> Thanks!
>
> -- Ivan
>
> Here is my WSDL:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions
> name="ProductsExampleWS"
>
> targetNamespace="http://ivenuti.altervista.org/ProductsExampleWS.wsdl"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>
> xmlns:tns="http://ivenuti.altervista.org/ProductsExampleWS.wsdl"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
> xmlns:xsd1="http://ivenuti.altervista.org/ProductsExampleWS.xsd1">
> <wsdl:types>
> <xsd:schema
>
> targetNamespace="http://ivenuti.altervista.org/ProductsExampleWS.xsd1"
>
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
>
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
> xmlns:xsd1="http://ivenuti.altervista.org/ProductsExampleWS.xsd1">
> <xsd:element name="confirmationOrder"
> type="xsd:string"/>
> <xsd:element
> name="confirmationOrderResponse" type="xsd:boolean"/>
> </xsd:schema>
> </wsdl:types>
> <wsdl:message name="confirmationOrder">
> <wsdl:part element="xsd1:confirmationOrder"
> name="paramIn"/>
> </wsdl:message>
> <wsdl:message name="confirmationOrderResponse">
> <wsdl:part
> element="xsd1:confirmationOrderResponse"
> name="paramOut"/>
> </wsdl:message>
> <wsdl:portType name="ProductsExampleWSPortType">
> <wsdl:operation name="confirmationOrder">
> <wsdl:input
> message="tns:confirmationOrder"
> name="messageConfirmationOrder"/>
> <wsdl:output
> message="tns:confirmationOrderResponse"
> name="messageConfirmationOrderResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding
> name="ProductsExampleWSBinding"
> type="tns:ProductsExampleWSPortType">
> <soap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="confirmationOrder">
> <soap:operation
>
> soapAction="capeconnect:ProductsExampleWS:ProductsExampleWSPortType#confirmationOrder"/>
> <wsdl:input>
> <soap:body parts="confirmationOrder"
> use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body
> parts="confirmationOrderResponse" use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="ProductsExampleWS">
> <wsdl:port
> binding="tns:ProductsExampleWSBinding"
> name="ProductsExampleWSPort">
> <soap:address
> location="http://localhost:8080/axis/ProductsExampleWS"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
>
>
> ___________________________________
> Nuovo Yahoo! Messenger: E' molto più divertente: Audibles, Avatar, Webcam, Giochi, Rubrica… Scaricalo ora!
> http://it.messenger.yahoo.it
>