Greetings. I have a web service, which I successfully deployed on a running Axis server. Now I am trying to get it to work without a running Axis server by deploying Axis as a part of webapp. I updated my webapp's web.xml and server-config.xml files to match those used on the Axis server. I also added all required axis jars in WEB-INF/lib. Then I shut down the Axis server and deployed my webapp. It deployed without errors. The service I am trying to deploy is a calendar service. This calendar service is listed when I go to the following URL: http://localhost:8080/calendar3/services When I go to http://localhost:8080/calendar3/services/calendar the page says: calendar Hi there, this is an AXIS service! However, when I try to have Axis generate the wsdl for this service by going to http://localhost:8080/calendar3/services/calendar?wsdl I get the following exception:
{http://xml.apache.org/axis/}stackTrace:The AXIS engine could not find a target service to invoke! targetService is null The full stack trace is shown at the end of this message. I am running Axis 1.2 RC2 on Tomcat 5.0. The code that throws the AxisFault is shown below: /** * At this point, the service should have been set by someone * (either the originator of the MessageContext, or one of the * transport or global Handlers). If it hasn't been set, we * fault. */ h = msgContext.getService(); if (h == null) { // It's possible that we haven't yet parsed the // message at this point. This is a kludge to // make sure we have. There probably wants to be // some kind of declarative "parse point" on the handler // chain instead.... Message rm = msgContext.getRequestMessage(); if (rm != null) { rm.getSOAPEnvelope().getFirstBody(); h = msgContext.getService(); } if (h == null) { throw new AxisFault(Constants.QNAME_NO_SERVICE_FAULT_CODE, Messages.getMessage("noService05", "" + msgContext.getTargetService()), null, null ); } } I noticed that there was a similar bug submitted some time ago: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21550 Has this issue been resolve and what do I need to do to fix this? Thanks. Oleg Full StackTrace: 2005-01-23 12:02:19,234: org.apache.axis.utils.NSStack,DEBUG,: NSPop (empty) AxisFault faultCode: {http://xml.apache.org/axis/}Server.NoService faultSubcode: faultString: The AXIS engine could not find a target service to invoke! targetService is null faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:The AXIS engine could not find a target service to invoke! targetService is null at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:460) at org.apache.axis.transport.http.QSWSDLHandler.invoke(QSWSDLHandler.java:62) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.axis.transport.http.AxisServlet.processQuery(AxisServlet.java:1132) at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:233) at javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:301) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) at java.lang.Thread.run(Thread.java:534) {http://xml.apache.org/axis/}hostname:magnum