Simon Laws wrote:
On Sat, Aug 16, 2008 at 9:13 PM, Jean-Sebastien Delfino
<[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:
I have the following WSDL:
<definitions ...>
<types>
<schema ...>
<element name="myOperation">
<complexType>
<sequence>
<element name="myData" type="tns:myDataType"/>
</sequence>
</complexType>
</element>
<element name="myOperationResponse">
<complexType>
<sequence>
<element name="myData" type="tns:myDataType"/>
</sequence>
</complexType>
</element>
</schema>
</types>
<message name="myOperationRequest">
<part element="tns:myOperation" name="myParameters"/>
</message>
<message name="myOperationResponse">
<part element="tns:myOperationResponse" name="myResult"/>
</message>
<portType name="myPortType">
<operation name="myOperation">
<input message="tns:myOperationRequest name="myOperationRequest"/>
<output message="tns:myOperationResponse"name="myOperationResponse"/>
</operation>
</portType>
</definitions>
That's a simple pattern, an operation using the same element+type as
input and ouput.
From that WSDL the JAXWS reference implementation wsimport tool
generates a Java method with an INOUT JAXWS Holder parameter. The
CXF wsimport tool does the same.
@WebMethod
@RequestWrapper(localName = "myOperation",
targetNamespace = "...", className = "...MyOperation")
@ResponseWrapper(localName = "myOperationResponse",
targetNamespace = "...", className = "...MyOperationResponse")
public void myOperation(
@WebParam(name = "myData", targetNamespace = "",
mode = WebParam.Mode.INOUT)
Holder<MyDataType> myMessage);
Is that supported by Tuscany? Can I use the generated Java interface
on a reference wired to a service typed by the above WSDL?
--
Jean-Sebastien
Hi
I don't believe we support holders yet. There is a JIRA open for this
(http://issues.apache.org/jira/browse/TUSCANY-2332) but it hasn't got to
the top of the list yet.
Simon
Could you push that JIRA up to the top then? it looks like others are
interested in that support too.
The above WSDL pattern is pretty basic and common: an echo operation, a
ping operation, a customer info update operation... all typically pass
the same element type in and out.
Most operations I have to invoke in the application I'm working on
follow that pattern and I'm not sure how to get around the current
Tuscany limitation.
--
Jean-Sebastien