I checked my classpath:
I have the following jar files dealing with XML in that order:
jaxp.jar; xerces.jar (version 1.2), xml4j.jar (2_0_15 I guess).

I used the TCP Tunnel/Monitor GUI to trace message. Here is the output I
get from the server:

HTTP/1.0 500 Internal Server Error
Content-Type: text/xml; charset=utf-8
Content-Length: 1842
Set-Cookie2: JSESSIONID=gss2dbsdf1;Version=1;Discard;Path="/soap"
Set-Cookie: JSESSIONID=gss2dbsdf1;Path=/soap

Date: Fri, 17 May 2002 16:35:20 GMT
Servlet-Engine: Tomcat Web Server/3.2.4 (JSP 1.1; Servlet 2.2; Java
1.3.1_03; Windows NT 4.0 x86; java.vendor=Sun Microsystems Inc.)

<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV
="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsi
="http://www.w3.org/1999/XMLSchema-instance"; xmlns:xsd
="http://www.w3.org/1999/XMLSchema";>
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server.Exception:</faultcode>
<faultstring>java.lang.NoSuchMethodError</faultstring>
<faultactor>/soap/servlet/rpcrouter</faultactor>
<detail>
<stackTrace>java.lang.NoSuchMethodError
      at bruno.SimpleService.&lt;init&gt;(SimpleService.java)
      at java.lang.Class.newInstance0(Native Method)
      at java.lang.Class.newInstance(Class.java:232)
      at
org.apache.soap.server.http.ServerHTTPUtils.getTargetObject(ServerHTTPUtils.java:279)
      at
org.apache.soap.providers.RPCJavaProvider.locate(RPCJavaProvider.java:117)
      at
org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:285)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
      at org.apache.tomcat.core.Handler.service(Handler.java:287)
      at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
      at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:806)
      at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:752)
      at
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
      at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
      at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
      at java.lang.Thread.run(Thread.java:479)
</stackTrace>
</detail>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

It seems that the RPCRouter try to load my class and call a method called
init(). Why? I haven't any init( ) method. So I created one to see and
effectively, I still get the same exception but the trace has one more
line, showing that that the Exception occurs in the method init() (that
does nothing) I created.

I will try to put a new version of the xerces parser....

Bruno FISCHEL



                                                                                       
                                                
                      Jacob Bowers                                                     
                                                
                      <jacob.bowers@ezg        To:       [EMAIL PROTECTED]      
                                                
                      ov.com>                  cc:                                     
                                                
                                               Subject:  Re: NoSuchMethodError (just 
for my sample, the other are working)             
                      05/17/02 06:59 AM                                                
                                                
                      Please respond to                                                
                                                
                      soap-user                                                        
                                                
                                                                                       
                                                
                                                                                       
                                                



Try moving a later version of an xml parser higher in your classpath.
xerces1_4_2.jar works.  Older versions can give you the NoSuchMethodError.

Bruno Fischel wrote:

> Hello,
> I have created a Java class that  I want to deploy as a webservice.
> Basically, this class has two methods dealing with types String and
> boolean.
> I can deploy easily my class using either the SOAP admin page or the
> command line.
> I am using tomcat as web server and all the samples installed are working
> fine, except my own webservice.
> I wrote a simple client which just call the two methods exposed. But I
> receive the following error:
>
> Fault Code   = SOAP-ENV:Server.Exception:
> Fault String = java.lang.NoSuchMethodError
>
> I do the call through the SOAP RPC router servlet.
> I check the classpath and everything seems to be fine.
> I have check with a method which doesn't have any parameters and I get
the
> same result.
>  Obviously, I checked that I use the same signature for the methods in my
> service class and the call in my client class.
>
> I will greatly appreciate if someone can help me on this topic.
>
> Bruno





Reply via email to