Simon Nash wrote:
(cut)
We can't get that done by our 1.0 though so need something for now.
We're
not planing on attempting to pass the jaxws tck so i'd be happy if we
just
have something that works even if we suspect it may not be fully jaxws
compliant as long as Tuscany services and references can talk to each
other
or to native axis2 clients and services. So i still quite like the
fix that
Simon L proposed early on in this thread.
...ant
I have now got my test case working to show Tuscany services and
references talking to each other using an augmented version of the
WSDL generated by Axis2 Java2WSDL (hand edited currently) with an
empty wrapper for the no parameters case. There's a small fix
needed in the databinding framework to deal with void return types
when there are no parameters. I have a patch and I'll post it soon.
The next step is to see whether this works for Tuscany services and
references talking to native Axis2 clients and services. I'll look
into this later and post my findings tomorrow.
I spent a while playing with this without making a lot of progress.
The ADB stubs gererated by Axis2's WSDL2Java are not the easiest to
decipher! Then I came across a very useful example/tutorial in the
Axis2 documentation (see [1]) that shows "wrapped no parameter" style
WSDL being used with Axis2's WSDL2Java to generate clients for ADB,
XMLBeans, and JiBX. This was very encouraging as it provides some
confirmation that "wrapped no parameter" style WSDL is valid for Axis2.
I'm now working through the steps in this tutorial to take this form
of "wrapped no parameter" WSDL and create an Axis2 client that talks
to a Tuscany service that uses the same WSDL. If successful, this
will confirm that having an empty wrapper element in generated WSDL
on the Tuscany service side doesn't cause any problems when an Axis2
client is talking to these Tuscany services.
I can now confirm that calls from a pure Axis2 client to a Tuscany
service do work with "wrapped no parameter" WSDL. Given that there
isn't an interoperability issue, I think we should postprocess the
Axis2-generated WSDL to add these "no parameter" wrappers when needed.
Does anyone disagree with this? If not, I will work on a patch.
Simon
For the opposite case of Tuscany clients talking to Axis2 services,
we need to make sure that Tuscany can support the "empty body"
style of wrapped WSDL that's generated by Axis2's Java2WSDL. For
this support, we'll need the fix that SimonL has produced.
I also looked at the code generated by Java2WSDL in CXF and wsgen
in JDK 6. (wsgen is JDK 6's Java to WSDL generator). Both of these
generate the empty wrapper element for the no parameters case, so it
does rather look like it's Axis2 that's out of step here.
Simon
[1]
http://ws.apache.org/axis2/1_3/userguide-creatingclients.html#createclients
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]