Thank you all for helping me, I googled up an article describing the main 
differences between RPC/encoded and Document/Literal and compared it to your 
answers and things are far more clear now to me.

Bram

Op donderdag 5 januari 2006 16:15, schreef Anne Thomas Manes:
> Here's your WSDL following the wrapped convention:
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <definitions name="ScreenkastMetaOptionQueryService"
>            targetNamespace="
> http://ws.test.com/screenkast/ScreenkastMetaOptionQuery";
>             xmlns="http://schemas.xmlsoap.org/wsdl/";
>             xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
>             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
>             xmlns:tns="
> http://ws.test.com/screenkast/ScreenkastMetaOptionQuery";
>             xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>             xmlns:myxsd="http://ws.test.com/screenkast/xsd";
>             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
>
>        <!-- TYPE DEFINITIONS -->
>
>        <types>
>                <schema targetNamespace="http://ws.test.com/screenkast/xsd";
>                        xmlns="http://www.w3.org/2001/XMLSchema";
>                        xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>                        elementFormDefault="qualified">
>
>                        <complexType name="PlatformSelectionType">
>                                <all>
>                                        <element name="id" type="xsd:int"/>
>                                        <element name="title"
> type="xsd:string"/>
>                                </all>
>                        </complexType>
>
>                        <complexType name="PlatformArrayType">
>                                <sequence>
>                                        <element name="platform"
> minOccurs="0" maxOccurs="unbounded"
>
> type="myxsd:PlatformSelectionType"/>
>                                </sequence>
>                        </complexType>
>
>                        <complexType name="OsSelectionType">
>                                <all>
>                                        <element name="id" type="xsd:int"/>
>                                        <element name="title"
> type="xsd:string"/>
>                                </all>
>                        </complexType>
>
>                        <complexType name="OsArrayType">
>                                <sequence>
>                                        <element name="os" minOccurs="0"
> maxOccurs="unbounded"
>                                           type="myxsd:OsSelectionType"/>
>                                </sequence>
>                        </complexType>
>
>                        <complexType name="OsVersionSelectionType">
>                                <all>
>                                        <element name="id" type="xsd:int"/>
>                                        <element name="title"
> type="xsd:string"/>
>                                </all>
>                        </complexType>
>
>                        <complexType name="OsVersionArrayType">
>                                <sequence>
>                                        <element name="osVersion"
> minOccurs="0" maxOccurs="unbounded"
>
> type="myxsd:OsVersionSelectionType"/>
>                                </sequence>
>                        </complexType>
>
>                        <element name="PlatformSelection"
> type="myxsd:PlatformSelectionType"/>
>                        <element name="PlatformArray"
> type="myxsd:PlatformArrayType"/>
>
>                        <element name="OsSelection"
> type="myxsd:OsSelectionType"/>
>                        <element name="OsArray" type="myxsd:OsArrayType"/>
>
>                        <element name="OsVersionSelection"
> type="myxsd:OsVersionSelectionType"/>
>                        <element name="OsVersionArray"
> type="myxsd:OsVersionArrayType"/>
>
>                        <element name="getAvailablePlatforms">
>                          <complexType>
>                            <sequence/>
>                          </complexType>
>                        </element>
>
>                        <element name="getAvailablePlatformsReturn">
>                          <complexType>
>                            <sequence>
>                              <element ref="myxsd:PlatformArray"/>
>                            </sequence>
>                          </complexType>
>                        </element>
>
>                        <element name="getAvailableOSs">
>                          <complexType>
>                            <sequence>
>                              <element ref="myxsd:PlatformSelection"/>
>                            </sequence>
>                          </complexType>
>                        </element>
>
>                        <element name="getAvailableOSsReturn">
>                          <complexType>
>                            <sequence>
>                              <element ref="myxsd:OsArray"/>
>                            </sequence>
>                          </complexType>
>                        </element>
>
>                        <element name="getAvailableOsVersions">
>                          <complexType>
>                            <sequence>
>                              <element ref="myxsd:PlatformSelection"/>
>                              <element ref="myxsd:OsSelection"/>
>                            </sequence>
>                          </complexType>
>                        </element>
>
>                        <element name="getAvailableOsVersionsReturn">
>                          <complexType>
>                            <sequence>
>                              <element ref="myxsd:OsVersionArray"/>
>                            </sequence>
>                          </complexType>
>                        </element>
>
>                </schema>
>        </types>
>
>        <!-- MESSAGE DEFINITIONS -->
>
>        <message name="getAvailablePlatformsRequest">
>           <part name="parameters" element="myxsd:getAvailablePlatforms"/>
>        </message>
>        <message name="getAvailablePlatformsResponse">
>                <part name="parameters"
> element="myxsd:getAvailablePlatformsReturn"/>
>        </message>
>
>        <message name="getAvailableOSsRequest">
>                <part name="parameters" element="myxsd:getAvailableOSs"/>
>        </message>
>        <message name="getAvailableOSsResponse">
>                <part name="parameters"
> element="myxsd:getAvailableOSsReturn"/>
>        </message>
>
>        <message name="getAvailableOsVersionsRequest">
>                <part name="parameters"
> element="myxsd:getAvailableOsVersions"/>
>        </message>
>        <message name="getAvailableOsVersionsResponse">
>                <part name="parameters"
> element="myxsd:getAvailableOsVersionsReturn"/>
>        </message>
>
>        <!-- PORT DEFINITIONS -->
>
>        <portType name="ScreenkastMetaOptionQueryPortType">
>                <operation name="getAvailablePlatforms">
>                        <input message="tns:getAvailablePlatformsRequest"/>
>                        <output
> message="tns:getAvailablePlatformsResponse"/> </operation>
>
>                <operation name="getAvailableOSs">
>                        <input message="tns:getAvailableOSsRequest"/>
>                        <output message="tns:getAvailableOSsResponse"/>
>                </operation>
>
>                <operation name="getAvailableOsVersions">
>                        <input message="tns:getAvailableOsVersionsRequest"/>
>                        <output
> message="tns:getAvailableOsVersionsResponse"/>
>                </operation>
>        </portType>
>
>        <!-- BINDING DEFINITIONS -->
>
>        <binding name="ScreenkastMetaOptionQueryBinding"
> type="tns:ScreenkastMetaOptionQueryPortType">
>                <soap:binding style="document" transport="
> http://schemas.xmlsoap.org/soap/http"/>
>
>                <operation name="getAvailablePlatforms">
>                        <soap:operation style="document"
> soapAction="getAvailablePlatforms"/>
>                        <input>
>                                <soap:body use="literal"/>
>                        </input>
>                        <output>
>                                <soap:body use="literal"/>
>                        </output>
>                </operation>
>
>                <operation name="getAvailableOSs">
>                        <soap:operation style="document"
> soapAction="getAvailableOSs"/>
>                        <input>
>                                <soap:body use="literal"/>
>                        </input>
>                        <output>
>                                <soap:body use="literal"/>
>                        </output>
>                </operation>
>
>                <operation name="getAvailableOsVersions">
>                        <soap:operation style="document"
> soapAction="getAvailableOsVersions"/>
>                        <input>
>                                <soap:body use="literal"/>
>                        </input>
>                        <output>
>                                <soap:body use="literal"/>
>                        </output>
>                </operation>
>        </binding>
>
>        <!-- SERVICE DEFINITIONS -->
>
>        <service name="ScreenkastMetaOptionQueryService">
>                <documentation>ScreenKast web service</documentation>
>                <port name="ScreenkastMetaOptionQueryPort"
> binding="tns:ScreenkastMetaOptionQueryBinding">
>                        <soap:address location="
> http://beligum.org/screenkast.wsdl"/>
>                </port>
>        </service>
>
> </definitions>
>
> On 1/5/06, Anne Thomas Manes <[EMAIL PROTECTED]> wrote:
> > Doc/literal messages must reference 0 or 1 body parts, so
> > getAvailablePlatforms is not ill-formed, but I recommend that you supply
> > an input message anyway (define an empty element), because otherwise it's
> > challenging to configure Axis. (You might consider adopting the wrapped
> > convention, which will make configuration much easier all the way
> > around.)
> >
> > You also must remove the namespace attributes from the <soap:body>
> > definitions. (The namespace attribute must be used only with RPC style
> > bindings).
> >
> > Anne
> >
> > On 1/5/06, Ted Jones <[EMAIL PROTECTED]> wrote:
> > > This looks like a problem:
> > >
> > > The following operations were ill-formed or referenced ill-formed
> > > schema constructs:
> > > getAvailablePlatforms : Doc/Lit operation's soap:body referenced 0
> > > parts, must reference exactly 1 part
> > > getAvailableOsVersions : Doc/Lit operation's soap:body referenced 2
> > > parts, must reference exactly 1 part
> > >
> > > What validator did you use? Did you validate against WSI?
> > >
> > > -----Original Message-----
> > > From: Bram Biesbrouck [mailto: [EMAIL PROTECTED]
> > > Sent: Thursday, January 05, 2006 8:12 AM
> > > To: [email protected]
> > > Subject: my wsdl flaw
> > >
> > > Hi everybody,
> > >
> > > Here I am again (it's driving me crazy, though).
> > > After a lot of testing and validating, my wsdl file still doesn't get
> > > parsed well by WSDL2java (NullPointerException). I tried two validators
> > > and they both tell me everything is fine, so perhaps, I'm thinking the
> > > flaw may be in WSDL2java (if that is even possible).
> > > I'm hoping someone on this list has more knowledge on the topic than I
> > > do, so if you do, please lend me a hand.
> > >
> > > Here's my WSDL file:
> > >
> > > <?xml version=" 1.0" encoding="UTF-8"?>
> > >
> > > <definitions name="ScreenkastMetaOptionQueryService"
> > >
> > > targetNamespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuer
> > >y
> > >
> > > "
> > >              xmlns="http://schemas.xmlsoap.org/wsdl/";
> > >              xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/
> > > " xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
> > >
> > > xmlns:tns=" http://ws.test.com/screenkast/ScreenkastMetaOptionQuery";
> > >              xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> > >              xmlns:myxsd=" http://ws.test.com/screenkast/xsd";
> > >              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
> > >
> > >         <!-- TYPE DEFINITIONS -->
> > >
> > >         <types>
> > >                 <schema
> > > targetNamespace="http://ws.test.com/screenkast/xsd";
> > >                         xmlns=" http://www.w3.org/2001/XMLSchema";
> > >                         xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
> > >                         elementFormDefault="qualified">
> > >
> > >                         <complexType name="PlatformSelectionType">
> > >                                 <all>
> > >                                         <element name="id"
> > > type="xsd:int"/>
> > >                                         <element name="title"
> > > type="xsd:string"/>
> > >                                 </all>
> > >                         </complexType>
> > >
> > >                         <complexType name="PlatformArrayType">
> > >                                 <sequence>
> > >                                         <element name="platform"
> > > minOccurs="0" maxOccurs="unbounded"
> > > type="myxsd:PlatformSelectionType"/>
> > >                                 </sequence>
> > >                         </complexType>
> > >
> > >                         <complexType name="OsSelectionType">
> > >                                 <all>
> > >                                         <element name="id"
> > > type="xsd:int"/>
> > >                                         <element name="title"
> > > type="xsd:string"/>
> > >                                 </all>
> > >                         </complexType>
> > >
> > >                         <complexType name="OsArrayType">
> > >                                 <sequence>
> > >                                         <element name="os"
> > > minOccurs="0" maxOccurs="unbounded"
> > > type="myxsd:OsSelectionType"/>
> > >                                 </sequence>
> > >                         </complexType>
> > >
> > >                         <complexType name="OsVersionSelectionType">
> > >                                 <all>
> > >                                         <element name="id"
> > > type="xsd:int"/>
> > >                                         <element name="title"
> > > type="xsd:string"/>
> > >                                 </all>
> > >                         </complexType>
> > >
> > >                         <complexType name="OsVersionArrayType">
> > >                                 <sequence>
> > >                                         <element name="osVersion"
> > > minOccurs="0" maxOccurs="unbounded"
> > > type="myxsd:OsVersionSelectionType"/>
> > >                                 </sequence>
> > >                         </complexType>
> > >
> > >                         <element name="PlatformSelection"
> > > type="myxsd:PlatformSelectionType"/>
> > >                         <element name="PlatformArray"
> > > type="myxsd:PlatformArrayType"/>
> > >
> > >                         <element name="OsSelection"
> > > type="myxsd:OsSelectionType"/>
> > >                         <element name="OsArray"
> > > type="myxsd:OsArrayType"/>
> > >
> > >                         <element name="OsVersionSelection"
> > > type="myxsd:OsVersionSelectionType"/>
> > >                         <element name="OsVersionArray"
> > > type="myxsd:OsVersionArrayType"/>
> > >
> > >                 </schema>
> > >         </types>
> > >
> > >         <!-- MESSAGE DEFINITIONS -->
> > >
> > >         <message name="getAvailablePlatformsRequest"/>
> > >         <message name="getAvailablePlatformsResponse">
> > >                 <part name="return" element="myxsd:PlatformArray"/>
> > >         </message>
> > >
> > >         <message name="getAvailableOSsRequest">
> > >                 <part name="platform"
> > > element="myxsd:PlatformSelection"/>
> > >         </message>
> > >         <message name="getAvailableOSsResponse">
> > >                 <part name="return" element="myxsd:OsArray"/>
> > >         </message>
> > >
> > >         <message name="getAvailableOsVersionsRequest">
> > >                 <part name="platform"
> > > element="myxsd:PlatformSelection"/>
> > >                 <part name="os" element="myxsd:OsSelection"/>
> > >         </message>
> > >         <message name="getAvailableOsVersionsResponse">
> > >                 <part name="return" element="myxsd:OsVersionArray"/>
> > >         </message>
> > >
> > >         <!-- PORT DEFINITIONS -->
> > >
> > >         <portType name="ScreenkastMetaOptionQueryPortType">
> > >                 <operation name="getAvailablePlatforms">
> > >                         <input
> > > message="tns:getAvailablePlatformsRequest"/>
> > >                         <output
> > > message="tns:getAvailablePlatformsResponse"/>
> > >                 </operation>
> > >
> > >                 <operation name="getAvailableOSs">
> > >                         <input message="tns:getAvailableOSsRequest"/>
> > >                         <output message="tns:getAvailableOSsResponse"/>
> > >                 </operation>
> > >
> > >                 <operation name="getAvailableOsVersions">
> > >                         <input
> > > message="tns:getAvailableOsVersionsRequest"/>
> > >                         <output
> > > message="tns:getAvailableOsVersionsResponse"/>
> > >                 </operation>
> > >         </portType>
> > >
> > >         <!-- BINDING DEFINITIONS -->
> > >
> > >         <binding name="ScreenkastMetaOptionQueryBinding"
> > > type="tns:ScreenkastMetaOptionQueryPortType">
> > >                 <soap:binding style="document"
> > > transport="http://schemas.xmlsoap.org/soap/http"/<http://schemas.xmlsoa
> > >p.org/soap/http%22/>
> > >
> > >
> > >                 <operation name="getAvailablePlatforms">
> > >                         <soap:operation style="document"
> > > soapAction="getAvailablePlatforms"/>
> > >                         <input>
> > >                                 <soap:body use="literal"
> > > namespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuery"/<ht
> > >tp://ws.test.com/screenkast/ScreenkastMetaOptionQuery%22/>
> > >
> > >                         </input>
> > >                         <output>
> > >                                 <soap:body use="literal"
> > > namespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuery"/<ht
> > >tp://ws.test.com/screenkast/ScreenkastMetaOptionQuery%22/>
> > >
> > >                         </output>
> > >                 </operation>
> > >
> > >                 <operation name="getAvailableOSs">
> > >                         <soap:operation style="document"
> > > soapAction="getAvailableOSs"/>
> > >                         <input>
> > >                                 <soap:body use="literal"
> > > namespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuery"/<ht
> > >tp://ws.test.com/screenkast/ScreenkastMetaOptionQuery%22/>
> > >
> > >                         </input>
> > >                         <output>
> > >                                 <soap:body use="literal"
> > > namespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuery"/<ht
> > >tp://ws.test.com/screenkast/ScreenkastMetaOptionQuery%22/>
> > >
> > >                         </output>
> > >                 </operation>
> > >
> > >                 <operation name="getAvailableOsVersions">
> > >                         <soap:operation style="document"
> > > soapAction="getAvailableOsVersions"/>
> > >                         <input>
> > >                                 <soap:body use="literal"
> > > namespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuery"/<ht
> > >tp://ws.test.com/screenkast/ScreenkastMetaOptionQuery%22/>
> > >
> > >                         </input>
> > >                         <output>
> > >                                 <soap:body use="literal"
> > > namespace="http://ws.test.com/screenkast/ScreenkastMetaOptionQuery"/<ht
> > >tp://ws.test.com/screenkast/ScreenkastMetaOptionQuery%22/>
> > >
> > >                         </output>
> > >                 </operation>
> > >         </binding>
> > >
> > >         <!-- SERVICE DEFINITIONS -->
> > >
> > >         <service name="ScreenkastMetaOptionQueryService">
> > >                 <documentation>ScreenKast web service</documentation>
> > >                 <port name="ScreenkastMetaOptionQueryPort"
> > > binding="tns:ScreenkastMetaOptionQueryBinding">
> > >                         <soap:address
> > > location="
> > > http://beligum.org/screenkast.wsdl"/<http://beligum.org/screenkast.wsdl
> > >%22/>
> > >
> > >                 </port>
> > >         </service>
> > >
> > > </definitions>

Reply via email to