Lee, If you're using Tomcat 4 (Catalina), and it looks that way below, then my experience is the following:
1. Modify TWO places in the 'bin/catalina.bat' (assuming Win else, catalina.sh). The first is near the top where CLASSPATH is defined. Mine looks like: rem ----- Save Environment Variables That May Change -------------------------- set _CATALINA_BASE=%CATALINA_BASE% set _CATALINA_HOME=%CATALINA_HOME% set _CLASSPATH=%CLASSPATH% set CLASSPATH=c:\Tools\xerces-1_4_3\xerces.jar;c:\Tools\soap-2_2\lib\soap.jar;c: \Tools\soap-2_2;c:\Tools\javamail-1.2\mail.jar;c:\Tools\jaf-1.0.1\activation .jar;c:\Tools\oracle\classes12.zip;c:\Projects\RootDirectoryForMyClasses\;%C LASSPATH%;%cp% set _CP=%CP% Around ~line 75 there is another section that has to change: rem ----- Set Up The Runtime Classpath ---------------------------------------- set CP=%CATALINA_HOME%\bin\bootstrap.jar;%JAVA_HOME%\lib\tools.jar if "%JSSE_HOME%" == "" goto noJsse set CP=%CP%;%JSSE_HOME%\lib\jcert.jar;%JSSE_HOME%\lib\jnet.jar;%JSSE_HOME%\lib\j sse.jar :noJsse rem set CLASSPATH=%CP% set CLASSPATH=%WSTK_CP%;%CP%;%CLASSPATH% So you can see from above this puts your server's application in the CLASSPATH, as well as the Soap samples. SECONDLY, Catalina's class loader operates different that Tomcat 3, so you need to put soap.jar in the WEB-INF of the application's directory under a 'lib' sub-dir. For rpcrouter put soap.jar in: /Tools/jakarta-tomcat-4.0.1/webapps/soap/WEB-INF/lib/soap.jar and you're good to go. If there is a more generic place for this, please advise. I'd like to know if so. But this worked for me. Btw, this is after I had things working on Tomcat 3.2.3. If there's anything I left out due to that configuration, I will advise. But if you're 'upgrading' your changes could follow the above. Good luck, mh -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Monday, December 10, 2001 2:50 PM To: [EMAIL PROTECTED] Subject: RE: Help! - addressbook example generated fault when putListings/ getAllListings Rino, Thanks for the quick response. Both DOMUtils and XMLParserUtils are in soap.jar. I wonder if it is necessary to put soap.jar in classpath in tomcat statup script. I tried to add it to the classpath and restarted tomcat, but I can't even deploy the service after that, following is the error I got, This test assumes a server URL of http://localhost:8080/apache-soap/servlet/rpcr outer Deploying the addressbook service... Exception in thread "main" [SOAPException: faultCode=SOAP-ENV:Protocol; msg=Unsu pported response content type "text/html", must be: "text/xml". Response was: <html><head><title>Apache Tomcat/4.0.1 - Error report</title><STYLE><! --H1{font- family : sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} BODY {font-family : sans-serif,Arial,Tahoma;color : black;background-color : white;} B{color : white;background-color : #0086b2;} HR{color : #0086b2;} --></STYLE> </ head><body><h1>Apache Tomcat/4.0.1 - HTTP Status 500 - Internal Server Error</h1 ><HR size="1" noshade><p><b>type</b> Exception report</p><p><b>message</b> <u>In ternal Server Error</u></p><p><b>description</b> <u>The server encountered an in ternal error (Internal Server Error) that prevented it from fulfilling this requ est.</u></p><p><b>exception</b> <pre>javax.servlet.ServletException: Error alloc ating a servlet instance at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.jav a:619) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:214) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:201) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java: 2344) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:164) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatche rValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java: 462) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:163) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcesso r.java:1011) at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.ja va:1106) at java.lang.Thread.run(Thread.java:484) </pre></p><p><b>root cause</b> <pre>java.lang.NoClassDefFoundError: javax/servle t/http/HttpServlet at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:486) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:11 1) at java.net.URLClassLoader.defineClass(URLClassLoader.java:248) at java.net.URLClassLoader.access$100(URLClassLoader.java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java:195) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:297) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286) at java.lang.ClassLoader.loadClass(ClassLoader.java:253) at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClas sLoader.java:1073) at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClas sLoader.java:989) at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClas sLoader.java:1073) at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClas sLoader.java:989) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa der.java:1293) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoa der.java:1156) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:80 1) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.jav a:615) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:214) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:201) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java: 2344) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:164) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatche rValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java: 462) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:163) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcesso r.java:1011) at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.ja va:1106) at java.lang.Thread.run(Thread.java:484) </pre></p><HR size="1" noshade></body></html> ] at org.apache.soap.rpc.Call.getEnvelopeString(Call.java:175) at org.apache.soap.rpc.Call.invoke(Call.java:212) at org.apache.soap.server.ServiceManagerClient.invokeMethod(ServiceManag erClient.java:129) at org.apache.soap.server.ServiceManagerClient.deploy(ServiceManagerClie nt.java:142) at org.apache.soap.server.ServiceManagerClient.main(ServiceManagerClient .java:230) Rino Srivastava <rsrivastava@producersam To: "'[EMAIL PROTECTED]'" erica.com> <[EMAIL PROTECTED]> cc: 12/10/01 05:07 PM Subject: RE: Help! - addressbook example generated Please respond to fault when putListings/ getAllListings soap-user Lee: Do check your classpath and make sure that DOMUtils and XMLParserUtils classes are in your classpath. Cheers! Rino -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Monday, December 10, 2001 3:45 PM To: [EMAIL PROTECTED] Subject: Help! - addressbook example generated fault when putListings/getAllListings Hi, The following happened when I ran the address book sample, seems the AddressBook class cannot find the DOMUtils and XMLParserUtils classes. Does anybody have a clue? ============================================================================ This test assumes a server URL of http://localhost:8080/apache-soap/servlet/rpcrouter Deploying the addressbook service... ...... Adding an XML file of listings Generated fault: Fault Code = SOAP-ENV:Server Fault String = Exception from service object:org/apache/soap/util/xml/DOMUtils Get everyone! Generated fault: Fault Code = SOAP-ENV:Server Fault String = Exception from service object:org/apache/soap/util/xml/XMLParserUtils Thanks in advance. Lee Guan