axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "I.Venuti" <i.ven...@caribel.pisa.it>
Subject R: R: Axis fails to generate wrrapped style messages from this WSDL
Date Mon, 18 Apr 2005 15:34:58 GMT
>
> Can you provide the WSDL?
>


here is it (with comments made to successfully obtaining the wrapper/literal
server-side stubs):

<?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:complexType name="Product">
                <xsd:annotation>
                    <xsd:documentation>Rappresents each product available
for each order</xsd:documentation>
                </xsd:annotation>
                <xsd:sequence>
                    <xsd:element maxOccurs="1" minOccurs="1" name="id"
type="xsd:string"/>
                    <xsd:element maxOccurs="1" minOccurs="1"
name="description" type="xsd:string"/>
                    <xsd:element maxOccurs="1" minOccurs="1" name="price"
type="xsd:double"/>
                    <xsd:element maxOccurs="1" minOccurs="1" name="currency"
type="xsd:string"/>
                    <xsd:element maxOccurs="1" minOccurs="1"
name="available" type="xsd:boolean"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfProduct">
                <xsd:sequence>
                    <xsd:element
                        maxOccurs="unbounded"
                        minOccurs="1"
                        name="item"
                        type="xsd1:Product"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:complexType name="ArrayOfProductInOrder">
                <xsd:sequence>
                    <xsd:element
                        maxOccurs="unbounded"
                        minOccurs="1"
                        name="item"
                        type="xsd1:ProductInOrder"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:element name="productsListResponse"
type="xsd1:ArrayOfProduct">
            </xsd:element>
            <xsd:element name="productsList" type="xsd:date">
            </xsd:element>
            <xsd:element name="confirmationOrder" type="xsd:string">
            </xsd:element>
            <xsd:element
                name="ElementArrayOfProductInOrder"
                type="xsd1:ArrayOfProductInOrder">
            </xsd:element>
            <xsd:element
                name="productsOrder"
                type="xsd1:ArrayOfProductInOrder">
            </xsd:element>
            <xsd:complexType name="OrderWithConfirmation">
                <xsd:sequence>
                    <xsd:element
                        maxOccurs="1"
                        minOccurs="1"
                        name="order"
                        type="xsd1:ArrayOfProductInOrder"/>
                    <xsd:element maxOccurs="1" minOccurs="1" name="magic"
type="xsd:string"/>
                </xsd:sequence>
            </xsd:complexType>
            <xsd:element
                name="productsOrderResponse"
                type="xsd1:OrderWithConfirmation">
            </xsd:element>
            <xsd:element name="ElementMagic" type="xsd:string">
            </xsd:element>
            <xsd:element name="confirmationOrderResponse"
type="xsd:boolean">
            </xsd:element>
            <xsd:complexType name="ProductInOrder">
                <xsd:sequence>
                    <xsd:element maxOccurs="1" minOccurs="1" name="id"
type="xsd:string"/>
                    <xsd:element
                        maxOccurs="1"
                        minOccurs="1"
                        name="quantity"
                        type="xsd:nonNegativeInteger"/>
                </xsd:sequence>
            </xsd:complexType>
        </xsd:schema>
    </wsdl:types>
    <wsdl:message name="productsOrder">
        <wsdl:part element="xsd1:productsOrder" name="productsOrder"/>
    </wsdl:message>
    <wsdl:message name="productsOrderResponse">
        <wsdl:part element="xsd1:productsOrderResponse"
name="productsOrderResponse"/>
    </wsdl:message>
    <wsdl:message name="productsList">
        <wsdl:part element="xsd1:productsList" name="productsList"/>
    </wsdl:message>
    <wsdl:message name="productsListResponse">
        <wsdl:part element="xsd1:productsListResponse"
name="productsListResponse"/>
    </wsdl:message>
    <wsdl:message name="confirmationOrder">
        <wsdl:part element="xsd1:confirmationOrder"
name="confirmationOrder"/>
    </wsdl:message>
    <wsdl:message name="confirmationOrderResponse">
        <wsdl:part element="xsd1:confirmationOrderResponse"
name="confirmationOrderResponse"/>
    </wsdl:message>
    <wsdl:portType name="ProductsExampleWSPortType">
        <wsdl:operation name="productsList">
            <wsdl:input message="tns:productsList" name="productsList"/>
            <wsdl:output message="tns:productsListResponse"
name="productsListResponse"/>
        </wsdl:operation>
        <wsdl:operation name="productsOrder">
            <wsdl:input message="tns:productsOrder" name="productsOrder"/>
            <wsdl:output message="tns:productsOrderResponse"
name="productsOrderResponse"/>
        </wsdl:operation>
        <!--wsdl:operation name="confirmationOrder">
            <wsdl:input message="tns:confirmationOrder"
name="confirmationOrder"/>
            <wsdl:output message="tns:confirmationOrderResponse"
name="confirmationOrderResponse"/>
        </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="productsList">
            <soap:operation
                soapAction="capeconnect:ProductsExampleWS:ProductsExampleWSP
ortType#productsList"/>
            <wsdl:input>
                <soap:body parts="productsList" use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body parts="productsListResponse" use="literal"/>
            </wsdl:output>
        </wsdl:operation>
        <wsdl:operation name="productsOrder">
            <soap:operation
                soapAction="capeconnect:ProductsExampleWS:ProductsExampleWSP
ortType#productsOrder"/>
            <wsdl:input>
                <soap:body parts="productsOrder" use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body parts="productsOrderResponse" use="literal"/>
            </wsdl:output>
        </wsdl:operation>
        <!--wsdl:operation name="confirmationOrder">
            <soap:operation
                soapAction="capeconnect:ProductsExampleWS:ProductsExampleWSP
ortType#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/18/05, I.Venuti <i.venuti@caribel.pisa.it> wrote:
> > The basic problem is that I'm expecting that a wrapped/literal
> WS will be
> > accessible in a easier way also from SOAP:Lite (Perl) and
> SOAPpy (Python)
> > tha actually I have got to write my own client with really few
> support of
> > the libraries.
> >
> > so I'm tring to convert my document/literal WSDL to
> wrapped/liter: I don't
> > know what I should get in detail, but I get two different
> implementations
> > and different deploy.wsdd by commenting out only one operation!!
> >
> > This sounds really strange (and I wonder if there is something
> wrong with
> > the commented operation)
> >
> > Here is what actually is generated: without the comments I get:
> >
> > deploy.wsdd
> >   <service name="ProductsExampleWSPort" provider="java:RPC"
> style="document"
> > use="literal">
> >
> > /**
> >  * ProductsExampleWSBindingImpl.java
> >  *
> >  * This file was auto-generated from WSDL
> >  * by the Apache Axis 1.2RC3 Feb 28, 2005 (10:15:14 EST)
> WSDL2Java emitter.
> >  */
> >
> > package it.ioprogrammo.ws;
> >
> > public class ProductsExampleWSBindingImpl implements
> > it.ioprogrammo.ws.ProductsExampleWSPortType{
> >     public it.ioprogrammo.ws.ArrayOfProduct
> > productsList(it.ioprogrammo.ws.MyDate lastUpdateDate) throws
> > java.rmi.RemoteException {
> >         return null;
> >     }
> >
> >     public it.ioprogrammo.ws.OrderWithConfirmation
> > productsOrder(it.ioprogrammo.ws.ArrayOfProductInOrder
> wantedProducts) throws
> > java.rmi.RemoteException {
> >         return null;
> >     }
> >
> >     public boolean productsOrderConfirmation(it.ioprogrammo.ws.MyString
> > confirmation) throws java.rmi.RemoteException {
> >         return false;
> >     }
> >
> > }
> >
> > If I comment out the productsOrderConfirmation operation I obtain:
> >
> >   <service name="ProductsExampleWSPort" provider="java:RPC"
> style="wrapped"
> > use="literal">
> >    ...
> >
> > /**
> >  * ProductsExampleWSBindingImpl.java
> >  *
> >  * This file was auto-generated from WSDL
> >  * by the Apache Axis 1.2RC3 Feb 28, 2005 (10:15:14 EST)
> WSDL2Java emitter.
> >  */
> >
> > package it.ioprogrammo.ws;
> >
> > public class ProductsExampleWSBindingImpl implements
> > it.ioprogrammo.ws.ProductsExampleWSPortType{
> >     public it.ioprogrammo.ws.ArrayOfProduct productsList(java.util.Date
> > productsList) throws java.rmi.RemoteException {
> >         return null;
> >     }
> >
> >     public void productsOrder(it.ioprogrammo.ws.ProductInOrder[] item,
> > it.ioprogrammo.ws.holders.ArrayOfProductInOrderHolder order,
> > javax.xml.rpc.holders.StringHolder magic) throws
> java.rmi.RemoteException {
> >         order.value = new it.ioprogrammo.ws.ArrayOfProductInOrder();
> >         magic.value = new java.lang.String();
> >     }
> >
> > }
> >
> > deploy.wsdd
> >   <service name="ProductsExampleWSPort" provider="java:RPC"
> style="wrapped"
> > use="literal">
> >
> > -- Ivan
> >
> >
>



Mime
View raw message