Hallo, I fixed this problem. in server.xml I write the context tag nested. The console report the syntactic error. Now add <Context path="/soap" docBase="D:\Programs\jakarta-tomcat-4.1.30\webapps\soap" reloadable="true"> </Context> at the bottom in server.xml. It runs: D:\Programs\jakarta-tomcat-4.1.30\webapps\soap\WEB-INF\classes>java onjava.CalcC lient 100 96 I am called! 4
Thanks very much Feilong ----- Original Message ----- From: "Scott Nichol" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, November 15, 2004 4:31 PM Subject: Re: Soap under Tomcat The error message suggests to me that your CalcService.java is missing the line package onjava; The Java class loader finds the CalcService.class file where it expects based on the deployment descriptor saying onjava.CalcService, but then discovers that the bytecode in CalcService.class does not specify the onjava package. Just to be sure you installed Apache SOAP properly, the instructions for installing under Tomcat 4.x are at http://cvs.apache.org/viewcvs.cgi/*checkout*/ws-soap/java/docs/install/tomcat.html?rev=1.17. Scott Nichol Do not send e-mail directly to this e-mail address, because it is filtered to accept only mail from specific mail lists. ----- Original Message ----- From: "feilong" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Sunday, November 14, 2004 5:09 PM Subject: Soap under Tomcat Hallo all, I am a beginner with web-service using soap protocol under Tomcat web server. I find a link http://www.onjava.com/pub/a/onjava/2002/02/27/tomcat.html?page=1 which introduce how to use soap in Tomcat and deploy web services and a simple client to call this web service I have followed each step what is showed in this article. All run succesfully. only the last step java onjava.CalcClient 96 95. I get the following exceptions, but unfortunately I can not understand such exceptions, I hope someone can indicate the reason for me ----------------------------------------------------------- D:\Programs\jakarta-tomcat-4.1.30\webapps\soap\WEB-INF\classes>java onjava.CalcClient 98 92 The call failed: Fault Code = SOAP-ENV:Server.Exception: Fault String = onjava/CalcService (wrong name: CalcService) ---------------------------------------------------------- I put my java servlet classes and source code in D:\Programs\jakarta-tomcat-4.1.30\webapps\soap\WEB-INF\classes\onjava I can deploy the CalcService servlet in Tomcat Server. But when I run the CalcClient, get the error messages above. I didn't edit \jakarta-tomcat-4.1.30\webapps\soap\WEB-INF\web.xml descriptor file. This web.xml is automatic generated by soap.war while I run the Tomcat Server first time. I don't know how can I edit the soap\WEB-INF\web.xml in this case, i.e new servlet under package soap\WEB-INF\classes\onjava Another DeploymentDescriptor.xml identifying soap-service under webapps\soap\WEB-INF\classes\onjava\ runs correctly since I can deploy this webservice. The soap\WEB-INF\web.xml looks like following ------------------------------------------------------------ <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"> <web-app> <display-name>Apache-SOAP</display-name> <description>no description</description> <servlet> <servlet-name>rpcrouter</servlet-name> <display-name>Apache-SOAP RPC Router</display-name> <description>no description</description> <servlet-class>org.apache.soap.server.http.RPCRouterServlet</servlet-class> <init-param> <param-name>faultListener</param-name> <param-value>org.apache.soap.server.DOMFaultListener</param-value> </init-param> </servlet> <servlet> <servlet-name>messagerouter</servlet-name> <display-name>Apache-SOAP Message Router</display-name> <servlet-class>org.apache.soap.server.http.MessageRouterServlet</servlet-cla ss> <init-param> <param-name>faultListener</param-name> <param-value>org.apache.soap.server.DOMFaultListener</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>rpcrouter</servlet-name> <url-pattern>/servlet/rpcrouter</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>messagerouter</servlet-name> <url-pattern>/servlet/messagerouter</url-pattern> </servlet-mapping> </web-app> ---------------------------------------------------------- I added new context in tomcat/conf/server.xml <Context path="/soap" docBase="soap" debug="0" reloadable="true" /> Thanks in advance Feilong