Hi Nick, I was also looking at the possibilities of JSR-181 annotated class exposing as a Axis2/JAXWS service.
On Nov 28, 2007 2:39 AM, Nicholas L Gallardo <[EMAIL PROTECTED]> wrote: > Keith, > > Are you talking about a JAX-WS specific deployer, or the POJO deployer? > I'm not aware of a JAX-WS specific one, but certainly agree that one is > needed. > This is about POJO Deployer, Simply we get this class package jaxws.example; import javax.jws.WebMethod; import javax.jws.WebService; @WebService(name= "WSASJAX_Service2", targetNamespace = "http://www.webtest.org/jaxws ") public class JAXWSService1 { @WebMethod(operationName = "echoMethodString") public String echoMethod(String s){ return s; } } * make it a jar * edit the axis2.xml entry specific on POJODeployer to pick up .jar files * put the jar into the repository/pojo directory * start axis2. When we do that we see the service with 2 methods echoMethodString and echoMethod. This is how to reproduce the issue. Also I saw that in the POJODeployer class code, If the JAXWS jars are present in the classpath then it will try to deploy it as a JAXWS endpoint, else it will deploy it as a Axis2 endpoint. https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/deployment/POJODeployer.javaguess this maybe the cause to the problem. > > > My guess as to what's happening... > > Right now, we have POJO deployment, but we don't have good JAX-WS > integration into the deployment infrastructure. > So actually what will be the procedure in the JAXWS module that we have in the Axis2, to get a service in to the axis2 deployment? What will be the packaging, is it the same as the AAR model, and do we need the wsdl too. > You're bean is being picked up as a POJO and deployed as such which is > where the "echoMethod" entry is coming from. > True. > > > Then, when your request hits the JAXWSMessageReceiver the first time, the > JAX-WS layer goes through its own metadata initialization. This includes > building up not only a EndpointDescription/OperationDescription, but a set > of AxisService/AxisOperation objects to match. These are being mapped to > "echomethodString" which is where the other entry comes from. > > When you say "It takes echoMethod and echomethodString as two different > methods.", what exactly do you mean there? They are reflected as two > operations in the WSDL? > No actually the ?wsdl generation fails in this above described scenario. > > > To the point of the WSDL 1.1 generation, that leads me to believe this > isn't being deployed as a JAX-WS endpoint at all. We've known for a while > that since we don't have formal tooling for JAX-WS that there is no > generation. I'm guessing that you're endpoint is being deployed as a normal > POJO endpoint using the base Axis2 runtime instead of JAX-WS. > Yes, Agreed these are issues in the POJODeployer and seems is we make the web method like this @WebMethod(operationName = "echoString") public String echoMethod(String s){ return s; } The scenario worked for me but making the annotated oprtation name same as the method name, breaks the whole concept of having the JSR-181 annotations at the first place. Will look in to more on this, I am looking forward on the way that how I can make use of the JAXWS module in regarding JSR-181 annotated class. Thanks Sandakith > > > Regards, > > -Nick > > > [image: Inactive hide details for "keith chapman" > <[EMAIL PROTECTED]>]"keith chapman" < [EMAIL PROTECTED]> > > > > *"keith chapman" <[EMAIL PROTECTED]>* > > 11/20/2007 01:49 AM > Please respond to > [email protected] > > > To > > [email protected] > cc > > > Subject > > Re: JAX-WS: problems with annotated methods > > Hi, > > This is due to a bug in the jaxws deployer and MessageReceiver. This can > be solved as follows, > > During deployment name the axisOperation according to the annotation > ("echomethodString") in this case and put a parameter into the axisOperation > stating the actual method name, therefore in the messageReceiver we know > which method to call. Can somebody familiar with JaxWS code do this fix > please. > > Thanks, > Keith. > On Nov 20, 2007 11:42 AM, Charitha Kankanamge <[EMAIL PROTECTED]<[EMAIL > PROTECTED]>> > wrote: > > Hi devs, > > I was trying to deploy jax-ws based service using axis2. Here is my > service impl class. please note that, I did not include any wsdl > inside > the service jar. > > @WebService(name= "WSASJAX_Service2", targetNamespace = > "*http://www.webtest.org/jaxws* <http://www.webtest.org/jaxws>") > public class jaxwsservice2 { > @WebMethod(operationName = "echomethodString") > public String echoMethod(String s){ > return s; > } > > } > > Axis2 does not handle this service correctly. It takes echoMethod > and > echomethodString as two different methods. Also Axis2 was unable to > generate wsdl1.1 using the above service impl class. WSDL generation > was > successful when I removed the annotation members of @WEbMethod > annotation. > > It seems that the Axis2 JAX-WS implementation is unable to handle > some > of the annotations which have annon members. I reported a JIRA for > this > issue at > *https://issues.apache.org/jira/browse/AXIS2-3352*<https://issues.apache.org/jira/browse/AXIS2-3352> > > since this is a fundamental scenario, it will be great if this is > resolved ASAP. > > Please let me know if there are any issues in the above steps which > were > used to generate jax-ws service. > > regards > Charitha > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED]<[EMAIL PROTECTED]> > For additional commands, e-mail: [EMAIL PROTECTED] *<[EMAIL PROTECTED]> > > > > > -- > Keith Chapman > WSO2 Inc. > Oxygen for Web Services Developers.* > **http://wso2.org/* <http://wso2.org/> > -- Thanks Lahiru Sandakith http://sandakith.wordpress.com/ GPG Key Fingerprint : 8CD8 68E0 4CBC 75CB 25BC 1AB1 FE5E 7464 1F01 9A0F
