Where to deploy wsdlFile
yfkao Jun 5, 2003 5:57 PMIn Axis, one can specify the location for wsdl file in its deployment descriptor deploy.wsdd so that
it is unnecessary to regenerate each time on the fly for query service, e.g.,
<deployment ...>
...
<wsdlFile>/TrafficWS.wsdl</wsdlFile>
It works fine when deployed on a standalne Tomcat installation.
However, it does not work when I deploy my service to jboss-3.2.1_tomcat-4.1.24. (see attached stack trace)
I have tried two different methods (many thanks to posts in the Forums; both work fine if without specifying
element) by
1) building a wsr file and deployed under the deploy directory where I have put the wsdl file at top or under
META-INFO within the wsr file;
or
2) copying all related classes under axis.war\WEB-INF\classes, where the wsdl file is deployed under
axis.war\WEB-INF\classes just like that in Tomcat.
Besides, I have attempted without success by moving the wsdl to each possible direcotory under axis.war.
The only place being able to locate it is directly under the drive (I am running on Windows)
where JBoss is installed.
Are there any other ways to make it work but not an absolute path?
Thanks in advance,
-yf
========= the attachement ============
AXIS error
Sorry, something seems to have gone wrong... here are the details:
Fault - java.io.FileNotFoundException: \TrafficWS.wsdl (The system cannot find the file specified)
AxisFault
faultCode: {http://xml.apache.org/axis/}Server.userException
faultString: java.io.FileNotFoundException: \TrafficWS.wsdl (The system cannot find the file specified)
faultActor: null
faultDetail:
stackTrace: java.io.FileNotFoundException: \TrafficWS.wsdl (The system cannot find the file specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.(FileInputStream.java:106)
at java.io.FileInputStream.(FileInputStream.java:66)
at org.apache.axis.handlers.soap.SOAPService.generateWSDL(SOAPService.java:361)
at org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:490)
at org.apache.axis.transport.http.AxisServlet.processWsdlRequest(AxisServlet.java:428)
at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:280)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:335)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:551)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:509)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)
at java.lang.Thread.run(Thread.java:534)