-
1. Re: Namespace issue for SEIs extending common interface
ropalka May 26, 2008 5:52 AM (in response to yogeshkb)Please, create an Jira issue for that here:
http://jira.jboss.org/jira/browse/JBWS
and provide a simple test case to reproduce your problem, please. -
2. Re: Namespace issue for SEIs extending common interface
yogeshkb May 26, 2008 7:05 AM (in response to yogeshkb)Hi,
I have raised the issue - http://jira.jboss.org/jira/browse/JBWS-2193.
Have also uploaded some sample programs to reproduce.
Thanks,
Yogesh -
3. Re: Namespace issue for SEIs extending common interface
yogeshkb May 28, 2008 7:07 AM (in response to yogeshkb)I was able to workaround this problem by adding a ReqestWrapper and ResponseWrapper annotations for the methods in WSVersionIF.
I used the message skeletons generated by the wsprovide tool and used these classes in the wrapper annotations.
My understanding is: For every SEI, jbossws generates operation message class skeletons in the "<SEI package>.jaxws" package and automatically adds annotations with the targetNamespace pointing to the SEI's targetNamespace. This approach fails when the common interface is used or inherited by multiple SEIs.
In my case, when jbossws loads the first webservice, it tries to generate the operation message class skeletons for the common interface methods in the common interface package suffixed with ".jaxws" ( eg., com.ws.common.jaxws) and fixes the targetNamespace as mentioned in the first SEI. For subsequent webservices, it just checks whether such a message class(of common interface) already exists and tries to reuse the same message class and hence the targetNamespace of the first webservice is used for the common operations across other webservices.
So I tried manually creating a operation message class for the common interface and explicitly mentioned that thro the RequestWrapper and ResponseWrapper annotations and found things are working as required.
Pls let me know whether this is a right solution and also pls confirm whether it voilates any wsdl/jaxws specs.