I'm not sure why Axis2 Java2WSDL does that, but I think Tuscany Java2WSDL should handle this correctly, for what it's worth.
On 9/10/07, Simon Laws <[EMAIL PROTECTED]> wrote: > > Hi > > In the Apache Tuscany Incubator we are using the Axis2 Java2WSDL tooling. > We > generate document/literal/wrapped wsdl (the default I believe for > java2WSDL) > and in Tuscany we are using the JAX-WS V2 specification as a guide to what > constitutes wrapped WSDL. We are coming up to our 1.0 release (in a few > weeks time) and have run into a couple of issues where we need to decide > quickly whether we are using the Axis2 tools incorrectly or whether we > need > to implement a work around. > > Note. We are running with Axis2 1.2 in Tuscany currently but I did the > generation below with Axis2 1.3 just to see if anything had changed in the > latest version. > > For the interface: > > public interface TestServiceParam { > > public String foo(); > > } > > Axis1.3 Java2WSDL produces > > ... > <wsdl:types> > <xs:schema xmlns:ns=" http://test" > attributeFormDefault="qualified" > elementFormDefault="qualified" targetNamespace=" http://test"> > <xs:element name="fooResponse"> > <xs:complexType> > <xs:sequence> > <xs:element minOccurs="0" name="return" > nillable="true" type="xs:string"/> > </xs:sequence> > </xs:complexType> > </xs:element> > </xs:schema> > </wsdl:types> > <wsdl:message name="fooRequest"/> > <wsdl:message name="fooResponse"> > <wsdl:part name="parameters" element="ns0:fooResponse"/> > </wsdl:message> > <wsdl:portType name="TestServiceParamPortType"> > <wsdl:operation name="foo"> > <wsdl:input message="ns0:fooRequest" wsaw:Action="urn:foo"/> > <wsdl:output message="ns0:fooResponse" > wsaw:Action="urn:fooResponse"/> > </wsdl:operation> > </wsdl:portType> > ... > > I was expecting the following. I've added + to the lines that have been > added. > > ... > <wsdl:types> > <xs:schema xmlns:ns=" http://test" > attributeFormDefault="qualified" > elementFormDefault="qualified" targetNamespace=" http://test"> > + <xs:element name="foo"> > + <xs:complexType/> > + </xs:element> > <xs:element name="fooResponse"> > <xs:complexType> > <xs:sequence> > <xs:element minOccurs="0" name="return" > nillable="true" type="xs:string"/> > </xs:sequence> > </xs:complexType> > </xs:element> > </xs:schema> > </wsdl:types> > <wsdl:message name="fooRequest"> > + <wsdl:part name="parameters" element="ns0:foo"/> > </wsdl:message> > <wsdl:message name="fooResponse"> > <wsdl:part name="parameters" element="ns0:fooResponse"/> > </wsdl:message> > <wsdl:portType name="TestServiceParamPortType"> > <wsdl:operation name="foo"> > <wsdl:input message="ns0:fooRequest" wsaw:Action="urn:foo"/> > <wsdl:output message="ns0:fooResponse" > wsaw:Action="urn:fooResponse"/> > </wsdl:operation> > </wsdl:portType> > ... > > Is the current output produced by design and if so why is it this way? > Are there options I can use to make java2WSDL generate the form I would > like? > > For the interface > > public interface TestServiceReturn { > > public void foo(String param); > > } > > Axis1.3 Java2WSDL produces > > <wsdl:types> > <xs:schema xmlns:ns=" http://test" > attributeFormDefault="qualified" > elementFormDefault="qualified" targetNamespace=" http://test"> > <xs:element name="foo"> > <xs:complexType> > <xs:sequence> > <xs:element minOccurs="0" name="param0" > nillable="true" type="xs:string"/> > </xs:sequence> > </xs:complexType> > </xs:element> > </xs:schema> > </wsdl:types> > <wsdl:message name="fooRequest"> > <wsdl:part name="parameters" element="ns0:foo"/> > </wsdl:message> > <wsdl:portType name="TestServiceReturnPortType"> > <wsdl:operation name="foo"> > <wsdl:input message="ns0:fooRequest" wsaw:Action="urn:foo"/> > </wsdl:operation> > </wsdl:portType> > > How did Axis2 decide to produce a one way message here? > Is there a way I can ask java2WSDL to produce a 2 way message in this > situation? > > I've looked in the mail lists and in JIRA and I don't see mention of this > but I'm fairly new to the resources that Axis2 has to offer so there's a > good chance I'm not looking in the right place or with the right search > term. Apologies if it's staring me in the face. > > Thanks > > Simon Laws > Apache Tuscany Incubator >