Do you have the serviceClass parameter in both service elements <serviceGroup> <service name="service1"> <parameter name="serviceClass" locked="xsd:false">stock.service.StockQuoteService</parameter> </service> <service name="service2"> <parameter name="serviceClass" locked="xsd:false">stock.service.StockQuoteService2</parameter> </service> <serviceGroup>
Michele Mazzucco wrote: >Hi Deepal, > >thanks very much for your help. Now that problem has been fixed, however >at runtime the web service doesn't work any more (while if you provide a >services.xml with a single service it does). > >On the client side I get the following exception: > >org.apache.axis2.AxisFault: SERVICE_CLASS parameter is not specified > at >org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:286) > at >org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:452) > at >org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:394) > at client.BlockSingleGetQuote.main(BlockSingleGetQuote.java:42) >Caused by: java.lang.Exception: org.apache.axis2.AxisFault: >SERVICE_CLASS parameter is not specified > at >org.apache.axis2.receivers.AbstractMessageReceiver.makeNewServiceObject(AbstractMessageReceiver.java:57) > at >org.apache.axis2.receivers.AbstractMessageReceiver.getTheImplementationObject(AbstractMessageReceiver.java:90) > at >org.apache.axis2.receivers.RawXMLINOutMessageReceiver.invokeBusinessLogic(RawXMLINOutMessageReceiver.java:73) > at >org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:37) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:450) > at >org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:283) > at > org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:130) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at >org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) > at >org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at >org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > at >org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at >org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) > at >org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at >org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at >org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at >org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > at >org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667) > at >org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at >org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) > at >org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > > at org.apache.axis2.AxisFault.<init>(AxisFault.java:159) > ... 4 more > > >where BlockSingleGetQuote.java:42 is > >OMElement result = sender.sendReceive(payload); > >while by pointing the browser to > >http://localhost:8080/axis2/services/StockQuoteService?wsdl > >I get an HTTP Status 500: > >javax.servlet.ServletException: null; nested exception is: > java.lang.NullPointerException > org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:105) > javax.servlet.http.HttpServlet.service(HttpServlet.java:689) > javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > >root cause > >org.apache.axis2.AxisFault: null; nested exception is: > java.lang.NullPointerException > org.apache.axis2.description.AxisService.getWSDL(AxisService.java:479) > org.apache.axis2.description.AxisService.printWSDL(AxisService.java:468) > > org.apache.axis2.transport.http.ListingAgent.processListService(ListingAgent.java:82) > > org.apache.axis2.transport.http.ListingAgent.handle(ListingAgent.java:45) > org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:103) > javax.servlet.http.HttpServlet.service(HttpServlet.java:689) > javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > > > >Any idea? > >Thanks in advance, >Michele > >Deepal Jayasinghe wrote: > > >>Hi Michele; >>I found the problem, each service element in a servicegroup have to have >>name attribute so if you apply my changes it will work >> >> >>Michele Mazzucco wrote: >> >> >> >>>Hi all, >>> >>>I'm using Axis2 1.0 RC2 and I'm having troubles with services.xml when I >>>include more that one service. >>> >>>In particular, the services.xml below doesn't work (the .aar file is >>>shown as "faulty service") >>> >>><?xml version="1.0" encoding="UTF-8"?> >>> >>><serviceGroup> >>> <service> >>> >>> >>> >>> >>*<service name="StockQuoteService">* >> >> >> >>> <description> >>> First >>> </description> >>> <parameter name="serviceClass" >>>locked="xsd:false">stock.service.StockQuoteService</parameter> >>> >>> <operation name="getQuote"> >>> <messageReceiver >>>class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/> >>> </operation> >>> >>> <operation name="subscribe"> >>> <messageReceiver >>>class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> >>> </operation> >>> </service> >>> >>> <service> >>> >>> >>> >>> >>*<service name="SchemaQuoteService">* >> >> >> >>> <description>Second</description> >>> <parameter name="serviceClass" >>>locked="xsd:false">stock.service.SchemaQuoteService</parameter> >>> >>> <operation name="getQuote1"> >>> <messageReceiver >>>class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/> >>> </operation> >>> >>> <operation name="subscribe1"> >>> <messageReceiver >>>class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/> >>> </operation> >>> </service> >>> >>> >>> <!-- <module ref="ModuleName" /> --> >>> <parameter name="serviceGroupParam1" locked="false">value 1</parameter> >>></serviceGroup> >>> >>>Any idea? >>> >>>Thanks in advance, >>>Michele >>> >>> >>> >>> >>> >>> > > > > -- Thanks, Deepal ................................................................ ~Future is Open~
