- From: Arun Gupta <Arun.Gupta@Sun.COM>
- Date: Thu, 13 Jul 2006 18:22:08 -0700
- To: David Illsley <david.illsley@uk.ibm.com>
- Cc: public-ws-addressing-tests@w3.org
Further looking at the WSDL tells me that it does not define sufficient port/binding combinations to test for wsdl:required values (true | false) on binding and port. I modified the WSDL after adding the required bindings/ports and also rearranged them to align with the testcase numbers. The latest WSDL is now available at: http://www.w3.org/2002/ws/addr/testsuitewsdl/documents/wsdl11/wsaTestService2.wsdl Thanks, -Arun David Illsley wrote: > Arun.Gupta@Sun.COM wrote on 07/13/2006 03:45:07 AM: > >> I looked at the WSDL and here are some comments: >> >> 1). For a document-literal WSDL, message part is refering to a type and >> instead should refer to a schema element declaration. This is what was >> done in Core/SOAP testing as well. > > Bah, I know you shouldn't blame your tools but here I feel justified... I > told it to generate doc/lit. > >> 1). The targetNamespace of the <types> section should be changed from >> "http://example.org/wsaTestService" to >> "http://example.org/wsaTestService2". It will actually have schema >> elements referred by the message parts. > > Yes, the rename was a last minute change, sorry I didn't pick that up. > >> 2). Remove wsdl:port "wsaTestPortTypePortWithName" as agreed upon in the > >> call. >> > > Yes, was going to do this today > >> 3). In all the bindings where wsaw:Anonymous is specified, it's missing >> from the notify operation. Is that intentional ? > > It's intentional because I didn't know the answer to 4 :-) > >> 4). How do we intend to test wsaw:Anonymous semantics for one-way > message ? > > Still don't know the answer to this.... seems like an important behaviour > to get defined though. Lets discuss on Monday. > >> 5). There are no faults in the WSDL. This leaves a gap in our testing of > >> implicit/explicit Action on fault messages. > > Oops, Sorry > >> 6). tns namespace prefix needs to be bound to >> "http://example.org/wsaTestService2" instead of >> "http://example.org/wsaTestService". > > As above, sorry about the incomplete rename > >> I'm attaching a WSDL with comments # 1-3, 5-6 incorporated. > > I can't see an attachment. Maybe the w3c list manager software strips it? > Thanks, > David > >> -Arun >> >> David Illsley wrote: >>> It turns out I was perhaps too comprehensive... Anonymous can't be > placed >>> on the port so the last 2 ports can go. >>> >>> 1st pass at the 2nd wsdl at >>> http://www.w3. >> org/2002/ws/addr/testsuitewsdl/documents/wsdl11/wsaTestService2.wsdl >>> David >>> >>> David Illsley >>> Web Services Development >>> MP127, IBM Hursley Park, SO21 2JN >>> +44 (0)1962 815049 (Int. 245049) >>> david.illsley@uk.ibm.com >>> ----- Forwarded by David Illsley/UK/IBM on 07/06/2006 08:22 PM ----- >>> >>> David Illsley/UK/IBM >>> 06/26/2006 09:26 PM >>> >>> To >>> public-ws-addressing-tests@w3.org >>> cc >>> >>> Subject >>> Requirements for the WSDL documents >>> >>> >>> >>> >>> >>> I've been thinking about what we need in the WSDL files and what I've > come >>> up with so far... I really hope this is comprehensive ;-) >>> Probably isn't though. Thoughts? >>> David >>> >>> Requirements (WSDL doc) >>> WSDL - targetnamespace = urn:example.org:wsaTestService >>> portType = wsaTestPortType >>> operation: echo - 2-way no wsaw:Action or soapAction specified >>> >>> WSDL - targetnamespace = http://example.org/wsaTestService >>> portType = wsaTestPortType >>> operation: notify- 1-way no wsaw:Action or name on input > element >>> specified >>> operation: echo - 2-way no wsaw:Action or name on input/output > >>> elements specified >>> >>> portType = wsaTestPortTypeWithName >>> operation: notify- 1-way no wsaw:Action specified but with > name on >>> input element=notify >>> operation: echo - 2-way no wsaw:Action specified but with name > on >>> input/output elements=echoIn/echoOut >>> >>> portType = wsaTestPortTypeExplicitAction >>> operation: notify- 1-way w/wsaw:Action=" >>> http://example.org/action/notify" >>> operation echo - 2-way w/wsaw:Action=" >>> http://example.org/action/echoIn " on Input w/wsaw:Action=" >>> http://example.org/action/echoOut" on Output >>> >>> binding = wsaTestPortTypeBinding - portType=wsaTestPortType - > no >>> soapAction >>> binding = wsaTestPortTypeBindingSoapAction - >>> portType=wsaTestPortType - soapAction specified for operations >>> binding = wsaTestPortTypeBindingWithName - >>> portType=wsaTestPortTypeWithName - no soapAction >>> binding = wsaTestPortTypeBindingExplicitAction - >>> portType=wsaTestPortTypeExplicitAction - no soapAction >>> binding = wsaTestPortTypeBindingAddressingRequired - >>> portType=wsaTestPortType - no soapAction - wsaw:UsingAddressing >>> required=true >>> binding = wsaTestPortTypeBindingAnonymousRequired - >>> portType=wsaTestPortType - no soapAction - wsaw:UsingAddressing - >>> wsaw:Anonymous = required >>> binding = wsaTestPortTypeBindingAnonymousProhibited - >>> portType=wsaTestPortType - no soapAction - wsaw:UsingAddressing - >>> wsaw:Anonymous = prohibited >>> binding = wsaTestPortTypeBindingAnonymousOptional - >>> portType=wsaTestPortType - no soapAction - wsaw:UsingAddressing - >>> wsaw:Anonymous = optional >>> >>> port = wsaTestPortTypePort - binding = wsaTestPortTypeBinding >>> port = wsaTestPortTypePortSoapAction - binding = >>> wsaTestPortTypeBindingSoapAction >>> port = wsaTestPortTypePortWithName - binding = >>> wsaTestPortTypeBindingWithName >>> port = wsaTestPortTypePortExplicitAction - binding = >>> wsaTestPortTypeBindingExplicitAction >>> port = wsaTestPortTypePortAddressingRequired - binding = >>> wsaTestPortTypeBindingAddressingRequired >>> port = wsaTestPortTypePortAnonymousRequired - binding = >>> wsaTestPortTypeBindingAnonymousRequired >>> port = wsaTestPortTypePortAnonymousProhibited - binding = >>> wsaTestPortTypeBindingAnonymousProhibited >>> port = wsaTestPortTypePortAnonymousOptional - binding = >>> wsaTestPortTypeBindingAnonymousOptional >>> port = wsaTestPortTypePortAddressingRequiredOnPort - binding = > >>> wsaTestPortTypeBinding wsaw:UsingAddressing required=true >>> port = wsaTestPortTypePortAnonymousRequiredOnPort - binding = > >>> wsaTestPortTypeBinding wsaw:UsingAddressing - wsaw:Anonymous = > required >>> port = wsaTestPortTypePortAnonymousProhibitedOnPort - binding > = >>> wsaTestPortTypeBinding wsaw:UsingAddressing - wsaw:Anonymous = > prohibited >> -- >> got Web Services ? >> Download and Contribute Web Services Interoperability Technology (WSIT) >> http://java.sun.com/webservices/interop >> <?xml version="1.0" encoding="UTF-8"?> >> <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" >> xmlns:tns="http://example.org/wsaTestService2" >> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" >> xmlns:xsd="http://www.w3.org/2001/XMLSchema" >> xmlns:s0="http://example.org/notify" >> xmlns:s1="http://example.org/echo" >> xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" >> name="wsaTestService2" >> targetNamespace="http://example.org/wsaTestService2"> >> <wsdl:types> >> <xsd:schema targetNamespace="http://example.org/notify" >> elementFormDefault="qualified" >> attributeFormDefault="unqualified"> >> <xsd:element name='notify' type='xsd:string'/> >> </xsd:schema> >> >> <xsd:schema targetNamespace="http://example.org/echo" >> elementFormDefault="qualified" >> attributeFormDefault="unqualified"> >> <xsd:element name='echoIn' type='xsd:string'/> >> <xsd:element name='echoOut' type='xsd:string'/> >> <xsd:element name='echoFault' type='xsd:string'/> >> </xsd:schema> >> </wsdl:types> >> <wsdl:message name="notifyRequest"> >> <wsdl:part name="notifyRequest" element="s0:notify"></wsdl:part> >> </wsdl:message> >> <wsdl:message name="echoRequest"> >> <wsdl:part name="echoRequest" element="s1:echoIn"></wsdl:part> >> </wsdl:message> >> <wsdl:message name="echoResponse"> >> <wsdl:part name="echoResponse" element="s1:echoOut"></wsdl:part> >> </wsdl:message> >> <wsdl:message name="echoFault"> >> <wsdl:part name="echoFault" element="s1:echoFault"></wsdl:part> >> </wsdl:message> >> <wsdl:portType name="wsaTestPortType"> >> <wsdl:operation name="echo"> >> <wsdl:input message="tns:echoRequest"></wsdl:input> >> <wsdl:output message="tns:echoResponse"></wsdl:output> >> <wsdl:fault name="echoFaultName" message="tns: >> echoFault"></wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <wsdl:input message="tns:notifyRequest"></wsdl:input> >> </wsdl:operation> >> </wsdl:portType> >> <wsdl:portType name="wsaTestPortTypeExplicitAction"> >> <wsdl:operation name="echo"> >> <wsdl:input message="tns:echoRequest" wsaw:Action="http: >> //example.org/action/echoIn"/> >> <wsdl:output message="tns:echoResponse" wsaw:Action=" >> http://example.org/action/echoOut"/> >> <wsdl:fault name="echoFaultName" message="tns:echoFault" >> wsaw:Action="http://example.org/action/echoFault"/> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <wsdl:input message="tns:notifyRequest" wsaw:Action=" >> http://example.org/action/notify"></wsdl:input> >> </wsdl:operation> >> </wsdl:portType> >> <wsdl:binding name="wsaTestPortTypeBinding" >> type="tns:wsaTestPortType"> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation soapAction=""/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction=""/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="wsaTestPortTypeBindingSoapAction" >> type="tns:wsaTestPortType"> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation > soapAction="http://example.org/wsaTestService/echo >> "/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction="http://example. >> org/wsaTestService/notify"/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="wsaTestPortTypeBindingExplicitAction" >> type="tns:wsaTestPortTypeExplicitAction"> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation soapAction=""/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction=""/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="wsaTestPortTypeBindingAddressingRequired" >> type="tns:wsaTestPortType"> >> <wsaw:UsingAddressing wsdl:required="true"/> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation soapAction=""/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction=""/> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="wsaTestPortTypeBindingAnonymousRequired" >> type="tns:wsaTestPortType"> >> <wsaw:UsingAddressing/> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation soapAction=""/> >> <wsaw:Anonymous>required</wsaw:Anonymous> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction=""/> >> <wsaw:Anonymous>required</wsaw:Anonymous> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="wsaTestPortTypeBindingAnonymousProhibited" >> type="tns:wsaTestPortType"> >> <wsaw:UsingAddressing/> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation soapAction=""/> >> <wsaw:Anonymous>prohibited</wsaw:Anonymous> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction=""/> >> <wsaw:Anonymous>prohibited</wsaw:Anonymous> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:binding name="wsaTestPortTypeBindingAnonymousOptional" >> type="tns:wsaTestPortType"> >> <wsaw:UsingAddressing/> >> <soap:binding style="document" >> transport="http://schemas.xmlsoap.org/soap/http"/> >> <wsdl:operation name="echo"> >> <soap:operation soapAction=""/> >> <wsaw:Anonymous>optional</wsaw:Anonymous> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> <wsdl:output> >> <soap:body use="literal"/> >> </wsdl:output> >> <wsdl:fault name="echoFaultName"> >> <soap:fault name="echoFaultName" use="literal"/> >> </wsdl:fault> >> </wsdl:operation> >> <wsdl:operation name="notify"> >> <soap:operation soapAction=""/> >> <wsaw:Anonymous>optional</wsaw:Anonymous> >> <wsdl:input> >> <soap:body use="literal"/> >> </wsdl:input> >> </wsdl:operation> >> </wsdl:binding> >> <wsdl:service name="wsaTestService2"> >> <wsdl:port name="wsaTestPortTypePort" >> binding="tns:wsaTestPortTypeBinding"> >> <soap:address > location="http://example.com/wsaTestPortTypePort"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortSoapAction" >> binding="tns:wsaTestPortTypeBindingSoapAction"> >> <soap:address location="http://example. >> com/wsaTestPortTypePortSoapAction"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortExplicitAction" >> binding="tns:wsaTestPortTypeBindingExplicitAction"> >> <soap:address location="http://example. >> com/wsaTestPortTypePortExplicitAction"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortAddressingRequired" >> binding="tns:wsaTestPortTypeBindingAddressingRequired"> >> <soap:address location="http://example. >> com/wsaTestPortTypePortAddressingRequired"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortAnonymousRequired" >> binding="tns:wsaTestPortTypeBindingAnonymousRequired"> >> <soap:address location="http://example. >> com/wsaTestPortTypePortAnonymousRequired"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortAnonymousProhibited" >> binding="tns:wsaTestPortTypeBindingAnonymousProhibited"> >> <soap:address location="http://example. >> com/wsaTestPortTypePortAnonymousProhibited"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortAnonymousOptional" >> binding="tns:wsaTestPortTypeBindingAnonymousOptional"> >> <soap:address location="http://example. >> com/wsaTestPortTypePortAnonymousOptional"/> >> </wsdl:port> >> <wsdl:port name="wsaTestPortTypePortAddressingRequiredOnPort" >> binding="tns:wsaTestPortTypeBinding"> >> <wsaw:UsingAddressing wsdl:required="true"/> >> <soap:address location="http://example. >> com/wsaTestPortTypePortAddressingRequiredOnPort"/> >> </wsdl:port> >> </wsdl:service> >> </wsdl:definitions> > -- got Web Services ? Download and Contribute Web Services Interoperability Technology (WSIT) http://java.sun.com/webservices/interop
Received on Friday, 14 July 2006 01:22:18 UTC