I looked over why the WSDL isn't showing the namespaces for the
WebParams and WebResults while they are being used in the SOAP messages
at execution time.

Since we are using Doc/Lit/Wrapped as the default, the WSDL generation
passes through org.apache.axis.wsdl.fromJava.Emitter.writeWrapperPart()
which only uses the local part of the parameter's Qname.  There is even
a "// Qname? " comment in the code there so the author may have had some
concerns about this.

A possible solution would be to overload or modify
org.apache.axis.wsdl.fromJava.Types.writeWrappedParameter(Element,
String, QName, Class) to take its second parameter as a QName instead of
a String.

Dims, shall I put this issue into the AXIS JIRA and put together a patch
since the ParameterDesc does in fact indicate a namespace that is being
lost in the WSDL?  I'm inclined to overload the method since
Types.writeWrappedParameter is currently public and I don't want to risk
breaking a whole bunch of existing code.

cheers,

Jonathan


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Monday, October 25, 2004 7:19 PM
To: Beehive Developers
Subject: Re: [jira] Commented: (BEEHIVE-19) targetNamespace for
WebParam, WebResult doesn't show up in WSDL

Hi Jonathan.

> The new JSR-181 revision specifies an optional targetNamespace 
> property for @WebParam and @WebResult. While it is already supported 
> by the object model, it doesn't show up in the WSDL yet.

> I fixed this but have no idea how to get the bug resolved.

Do you know the code you fixed has already been checked in ?

I've tried with the lastest code but couldn't see any differences  in
WSDL.

I specified SOAPBinding style document and annotated a parameter with
@WebParam(targetNamespace="http://www.beehive.com/MyTarget"; ).

Thanks in advance.

Wolfgang.



Reply via email to