Use Axis 1.4 instead.

Anne

On 7/30/07, Philipp Leitner <[EMAIL PROTECTED]> wrote:
> AFAIK Axis 2 does not support RPC/encoded at all since it is  not WS-I
> compliant.
>
> /philipp
>
> alpatino2 schrieb:
> > Hi!
> >
> > I have a slightly different requirement: I received wsdl's from a service
> > provider that implements the TR-069 spec, this spec define the use of
> > rpc/encoded style. I need to invoke this service but I am not able to
> > generate the client, I tried to generate the client for the sample
> > stockAvailableNotification.wsdl extracted from the Building Web Services
> > with Java book, but I get the following error:
> >
> >
> >
> > Exception in thread "main"
> > org.apache.axis2.wsdl.codegen.CodeGenerationException: Error parsing WSDL
> >         at
> > org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerationEngine.java:140)
> >         at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:32)
> >         at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:21)
> > Caused by: javax.wsdl.WSDLException: WSDLException: faultCode=PARSER_ERROR:
> > Parser SAX Error: org.xml.sax.SAXException: Fatal Error:
> > URI=file:///home/albertop/axis2/wsdl-rpc/examples/src/ch6/ex2/stockAvailableNotification.wsdl
> > Line=24: The prefix "wsdl" for attribute "wsdl:arrayType" associated with an
> > element type "attribute" is not bound.
> >         at
> > org.apache.axis2.wsdl.codegen.CodeGenerationEngine.readInTheWSDLFile(CodeGenerationEngine.java:300)
> >         at
> > org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerationEngine.java:97)
> >         ... 2 more
> > Caused by: org.xml.sax.SAXException: Fatal Error:
> > URI=file:///home/albertop/axis2/wsdl-rpc/examples/src/ch6/ex2/stockAvailableNotification.wsdl
> > Line=24: The prefix "wsdl" for attribute "wsdl:arrayType" associated with an
> > element type "attribute" is not bound.
> >
> > The wsdl from the book is:
> >
> > <?xml version="1.0" ?>
> > <definitions name="StockAvailableNotification"
> >         targetNamespace=
> >            "http://www.skatestown.com/services/StockAvailableNotification";
> >          xmlns:xsd="http://www.w3.org/2000/10/XMLSchema";
> >          xmlns:reg="http://www.skatestown.com/ns/registrationRequest";
> >          xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
> >          xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
> >          xmlns="http://schemas.xmlsoap.org/wsdl/";>
> >
> >    <!-- Type definitions from the registration schema-->
> >    <types>
> >       <xsd:schema
> > targetNamespace="http://www.skatestown.com/ns/registrationRequest";
> >          xmlns:xsd="http://www.w3.org/2000/10/XMLSchema";
> >          xmlns="http://www.skatestown.com/schemas/ns/registrationRequest";>
> >
> >          <xsd:complexType name="registrationRequest">
> >             <xsd:sequence>
> >                <xsd:element name="items">
> >                   <xsd:complexType name="ArrayOfItem">
> >                      <complexContent>
> >                         <restriction base="soapenc:Array">
> >                            <attribute ref="soapenc:arrayType"
> >                                wsdl:arrayType="xsd:string[]"/>
> >                         </restriction>
> >                      </complexContent>
> >                   </complexType>
> >                </xsd:element>
> >
> >                <xsd:element name="address" type="xsd:uriReference"/>
> >
> >                <xsd:element name="transport"
> >                             default="http://schemas.xmlsoap.org/soap/smtp";
> > minOccurs="0">
> >                   <xsd:simpleType>
> >                      <xsd:restriction base="xsd:uriReference">
> >                         <xsd:enumeration
> > value="http://schemas.xmlsoap.org/soap/http"/>
> >                         <xsd:enumeration
> > value="http://schemas.xmlsoap.org/soap/smtp"/>
> >                      </xsd:restriction>
> >                   </xsd:simpleType>
> >                </xsd:element>
> >
> >                <xsd:element name="clientArg" type="xsd:string"
> > minOccurs="0"/>
> >             </xsd:sequence>
> >          </xsd:complexType>
> >
> >          <xsd:simpleType name="correlationID">
> >             <xsd:restriction base="xsd:string">
> >             <!-- some appropriate restriction -->
> >             </xsd:restriction>
> >          </xsd:simpleType>
> >       </xsd:schema>
> >    </types>
> >
> >    <!-- Message definitions -->
> >    <message name="StockAvailableRegistrationRequest">
> >       <part name="registration" element="reg:registrationRequest"/>
> >       <part name="expiration" type="xsd:timeInstant"/>
> >    </message>
> >
> >    <message name="StockAvailableRegistrationResponse">
> >       <part name="correlationID" type="reg:correlationID"/>
> >    </message>
> >
> >    <message name="StockAvailableRegistrationError">
> >       <part name="errorString" type="xsd:string"/>
> >    </message>
> >
> >    <message name="StockAvailableExpirationError">
> >       <part name="errorString" type="xsd:string"/>
> >    </message>
> >
> >    <message name="StockAvailableNotification">
> >       <part name="timeStamp" type="xsd:timeInstant"/>
> >       <part name="correlationID" type="reg:correlationID"/>
> >       <part name="items" type="reg:items"/>
> >       <part name="clientArg" type="xsd:string"/>
> >    </message>
> >
> >    <message name="StockAvailableExpirationNotification">
> >       <part name="timeStamp" type="xsd:timeInstant"/>
> >       <part name="correlationID" type="reg:correlationID"/>
> >       <part name="items" type="reg:ArrayOfItem"/>
> >       <part name="clientArg" type="xsd:string"/>
> >    </message>
> >
> >    <message name="StockAvailableCancellation">
> >       <part name="correlationID" type="reg:correlationID"/>
> >    </message>
> >
> >    <!-- Port type definitions -->
> >    <portType name="StockAvailableNotificationPortType">
> >       <!--Registration Operation -->
> >       <operation name="registration">
> >          <input message="StockAvailableRegistrationRequest"/>
> >          <output message="StockAvailableRegistrationResponse"/>
> >          <fault message="StockAvailableRegistrationError"
> >             name="StockAvailableNotificationErrorMessage"/>
> >          <fault message="StockAvailableExpirationError"
> >             name="StockAvailableExpirationError"/>
> >       </operation>
> >
> >       <!--Notification Operation -->
> >       <operation name="notification">
> >          <output message="StockAvailableNotification"/>
> >       </operation>
> >
> >       <!--Expiration Notification Operation -->
> >       <operation name="expirationNotification">
> >          <output message="StockAvailableExpirationNotification"/>
> >       </operation>
> >
> >       <!--Cancellation Operation -->
> >       <operation name="cancellation">
> >          <input message=" StockAvailableCancellation"/>
> >       </operation>
> >    </portType>
> >
> >    <!-- Binding definitions -->
> >    <binding name="StockAvailableNotificationSOAPBinding"
> >       type="StockAvailableNotificationPortType">
> >       <soap:binding style="rpc"
> >                transport="http://schemas.xmlsoap.org/soap/http"/>
> >
> >       <documentation>Note: the requestor must invoke the registration
> > operation first.
> >       </documentation>
> >
> >       <operation name="registration">
> >          <soap:operation
> >             soapAction=
> >
> > "http://www.skatesTown.com/StockAvailableNotification/registration";>
> >          <input>
> >             <soap:header message="StockAvailableRegistrationRequest"
> >                   part="expiration" use="encoded"
> >
> > namespace="http://www.skatestown.com/ns/registrationRequest";
> >
> > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
> >                <soap:headerfault message="StockAvailableExpirationError"
> >                   part="errorString" use="encoded"
> >
> > namespace="http://www.skatestown.com/ns/registrationRequest";
> >
> > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
> >             </soap:header>
> >             <soap:body parts="registration" use="literal" style="document"/>
> >          </input>
> >          <output>
> >             <soap:body use="encoded"
> >                 namespace="http://www.skatestown.com/ns/registrationRequest";
> >                 encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
> >          </output>
> >          <fault name="StockAvailableNotificationErrorMessage">
> >             <soap:fault name="StockAvailableNotificationErrorMessage"
> >                 namespace="http://www.skatestown.com/ns/registrationRequest";
> >                 encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
> >          </fault>
> >       </operation>
> >
> >       <operation name="notification">
> >          <output>
> >             <soap:body use="encoded"
> >                 namespace="http://www.skatestown.com/ns/registrationRequest";
> >                 encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
> >          </output>
> >       </operation>
> >
> >       <operation name="cancellation">
> >          <soap:operation
> >             soapAction=
> >
> > "http://www.skatesTown.com/StockAvailableNotification/cancellation";>
> >          <input>
> >             <soap:body use="encoded"
> >                 namespace="http://www.skatestown.com/ns/registrationRequest";
> >                 encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
> >          </input>
> >       </operation>
> >    </binding>
> >
> >    <!-- Service definition -->
> >    <service name="StockAvailableNotificationService">
> >       <port name="StockAvailableNotificationPort" binding="
> >             StockAvailableNotificationSOAPBinding ">
> >          <soap:address
> > location="http://www.skatestown.com/axis/services/StockNotification"/>
> >       </port>
> >    </service>
> >
> > </definitions>
> >
> >
> > Thanks!!
> >
> >
> > You will have to update the .NET client to use the new WSDL.
> > .NET has an easy-to-use utility call wsdl.exe that generates client
> > stubs for you.
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to