Hi , The best way to get familiar with Axis2's JAX-WS model is try out for samples available on Axis2 sample directory, there are number of JAX-WS samples there , it is easy to start with "java_first_jaxws" sample application. once you get familiar with those you can determine the best approach for your case .
Thanks , On Sat, Apr 18, 2009 at 1:08 AM, Alain Drolet <adro...@nortel.com> wrote: > Hi Rameh > > I have very limited time to answer to you. > Also I am not an axis2 guru, but I typically make it do what I need if I > fight for long enough. > > Having said that here are a few quick pointers I can provide. > These are based on experience and what I think I know about axis2 ways to do > things. > Axis2 real gurus, feel free to correct me. > > There is 2 general ways to deploy a web service in axis2: > > - deploy as a jar file > That seems to be the natural approach provided by axis2 if you build your > project using the JAXWS programming model. > With this approach you generate code from the wsdl using wsimport (not > wsdl2java). > You package as a jar files (see the jaxws-guide). > You do not use a services.xml file. That makes you life easier. > You deploy in the servicejars directory. > This directory uses a different deployer class. > Look in the axis2 configuration file to learn more. > > That's the approach I use. > > - deploy as a aar file > That's for all the other programming models supported by axis2. > Here you build your archive the axis2 way. That's why its not a war file. > You generate code using wsdl2java. That also produce a services.xml file. > You deploy in the services directory. > > In theory aar files can be used as well for JAXWS project. > The guide however provides zero info on how to do this. > For instance you need to specify the message receivers. > I just gave up and deploy as aar in servicejars - easy! > > Hoping this helps > Alain > > > ----------------------------------------------------------------- > Alain Drolet > QT12 Layer 2 Provisioning Design > email: adro...@nortel.com > Location: CAR L10W F2 PJ6 Phone: (613) 763-4258; Fax: 763-4157 > Nortel, Ottawa, ON, Canada, K1Y 4H7 > > > Ramesh Vishwanatham wrote: > > Hi Axis2 Developers and Gurus > > Recently I have sent below request to "axis2-user" group and did not get > any responses at all. I am evalutaing axis2 and JAX-WS programming model > and struck with simple sample application. I found there is not much > material out there like "how-to" step by step guild to build web > applications using axis2 and JAX-WS. I have read following link > "http://ws.apache.org/axis2/1_4_1/jaxws-guide.html" and gives an overall > high level view but lacks details. > > May be some thing is wrong with my implementation class and/or services.xml > file. Also there is a possibility there is bug in Axis2 1.4.1 for JAX-WS. > > I am hoping some one will clarify this issue. > > Thanks in Advance > Ramesh > ------------------------------------------------------------------------------------------------------------------------------------------------------------ > Hi All > > I am getting below error when a client calls a web service operation built > using Axis2 1.4.1, Java 1.6, JAX-WS > and Tomcat 6.0.18: > > [ERROR] Message Receiver not found for AxisOperation: > {http://service/}getQuote > org.apache.axis2.AxisFault: Message Receiver not found for AxisOperation: > {http: > //service/}getQuote > > Here are the steps followed: > > 1) Axis2 war file is deployed in Tomcat 6.0.18. > > 2) Using top-down model with existing wsdl. Generated server and client side > code using wsimport tool part of > Java 1.6. Added Java implementation class for interface and deployed the > service under services folder in axis2 > WEB-INF.The service is deployed and it is active. > > 3) When I run the client I get an exception with above exception message > > 4) I also built service using axis2 WSDL2Java tool (adb as data binding) and > deployed it. When I ran the > client (which is built using JAX-WS api) it works fine. > > So the error is in service side with JAX-WS. Is it a bug in axis2 1.4.1 > implememtation or some thing I am missing? > > Please help me resolve this issue. > > Below are the service implementation class, services.xml and wsdl files: > > Prj71Impl.java > --------------- > package service; > import javax.jws.WebService; > import javax.xml.ws.BindingType; > import javax.xml.ws.soap.SOAPBinding; > > > @WebService(endpointInterface = "service.Prj71", > serviceName = "Prj71Service", > wsdlLocation="META-INF/Prj71Service.wsdl", portName= "Prj71Port") > public class Prj71Impl implements Prj71 { > > public GetQuoteResponse > getQuote(GetQuoteRequest req) { > GetQuoteResponse res = new GetQuoteResponse(); > res.setReturn(100); > return res; > } > > } > > services.xml > ------------ > <?xml version="1.0" encoding="UTF-8"?> > <serviceGroup> > <service name="Prj71Service" scope="application"> > <messageReceiver> > <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" > class="org.apache.axis2.jaxws.server.JAXWSMessageReceiver"/> > </messageReceiver> > <parameter name="ServiceClass">service.Prj71Impl</parameter> > <parameter name="useOriginalwsdl">true</parameter> > <!-- Below entries are added but no difference in resolving the > problem --> > <parameter name="modifyUserWSDLPortAddress">true</parameter> > <operation name="getQuote" > mep="http://www.w3.org/2004/08/wsdl/in-out" namespace="http://service/"> > <actionMapping>tns:getQuote</actionMapping> > > <outputActionMapping>http://service/Prj71/getQuoteResponse</outputActionMapping> > </operation> > </service> > </serviceGroup> > > > Prj7Service.wsdl > ----------------- > > <?xml version="1.0" encoding="UTF-8" standalone="yes"?> > > <wsdl:definitions name="Prj71Service" targetNamespace="http://service/" > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > xmlns:tns="http://service/" > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> > <wsdl:types> > <xsd:schema> > <xsd:import namespace="http://service/" > schemaLocation="Prj71Service_schema1.xsd"/> > </xsd:schema> > </wsdl:types> > <wsdl:message name="getQuoteRequest"> > <wsdl:part name="parameters" element="tns:GetQuoteRequest"/> > </wsdl:message> > <wsdl:message name="getQuoteResponse"> > <wsdl:part name="parameters" element="tns:GetQuoteResponse"/> > </wsdl:message> > <wsdl:portType name="Prj71"> > <wsdl:operation name="getQuote"> > <wsdl:input message="tns:getQuoteRequest"/> > <wsdl:output message="tns:getQuoteResponse"/> > </wsdl:operation> > </wsdl:portType> > <wsdl:binding name="Prj71PortBinding" type="tns:Prj71"> > <soap:binding transport="http://schemas.xmlsoap.org/soap/http" > style="document"/> > <wsdl:operation name="getQuote"> > <soap:operation soapAction="tns:getQuote"/> > <wsdl:input> > <soap:body use="literal"/> > </wsdl:input> > <wsdl:output> > <soap:body use="literal"/> > </wsdl:output> > </wsdl:operation> > </wsdl:binding> > <wsdl:service name="Prj71Service"> > <wsdl:port name="Prj71Port" binding="tns:Prj71PortBinding"> > <soap:address > location="http://localhost:8080/axis2/services/Prj71Service"/> > </wsdl:port> > </wsdl:service> > </wsdl:definitions> > > Thanks > Ramesh > ________________________________________________________ > DTCC DISCLAIMER: This email and any files transmitted with it are > confidential and intended solely for the use of the individual or entity to > whom they are addressed. If you have received this email in error, please > notify us immediately and delete the email and any attachments from your > system. The recipient should check this email and any attachments for the > presence of viruses. The company accepts no liability for any damage caused > by any virus transmitted by this email. -- Sagara Gunathunga Blog - http://ssagara.blogspot.com Web - http://sagaras.awardspace.com/