I have registered my SOAP Service and checked with SOAP Admin using http://localhost:8080/soap/admin/index.html. My service is listed under urn:Example1. I have checked the message Router using http://localhost:8080/soap/servlet/messagerouter and it replies
SOAP Message Router
Sorry, I don't speak via HTTP GET- you have to use HTTP POST to talk to
me.
This is correct
When I try to connect to the SOAP Service from the Client using
java Example1_client http://lolalhost:8080/soap/servlet/rpcrouter Hi Example2, I get the following Client output
Calling the SOAP Server to say hello
The SOAP Server says:
Ouch, the call failed:
Fault Code = SOAP-ENV:Server
Fault String = service 'urn:Example2' unknown
This is fine because I do not have a Service called Example2 registered.
However, when I connect using
java Example1_client http://lolalhost:8080/soap/servlet/rpcrouter Hi Example1
I get the below exception. From looking at the FAQs, it seems my routing is correct.
Could this mean that my Servlet is not being invoked on the Server side or cannot be found, perhaps my CLASSPATHS are incorrect?
The SOAP Server says: Exception in thread "main" [SOAPException: faultCode=SOAP-
ENV:Protocol; msg=Unsupported response content type "text/html", must
be: "text/xml". Response was:
<html>
<head>
<title>Tomcat Exception Report</title>
</head>
<body bgcolor="white">
<br><br>
<h1>A Servlet Exception Has Occurred</h1>
<pre>
javax.servlet.ServletException: Error building response envelope: java.lang.Null
PointerException
at org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.
java:418)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Unkn
own Source)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(Unknown Sour
ce)
at org.apache.catalina.core.StandardWrapperValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.core.StandardContextValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
at org.apache.catalina.valves.CertificatesValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.core.StandardContext.invoke(Unknown Source)
at org.apache.catalina.core.StandardHostValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
at org.apache.catalina.valves.AccessLogValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.core.StandardEngineValve.invoke(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invokeNext(Unknown Source)
at org.apache.catalina.core.StandardPipeline.invoke(Unknown Source)
at org.apache.catalina.core.ContainerBase.invoke(Unknown Source)
at org.apache.catalina.connector.http.HttpProcessor.process(Unknown Sour
ce)
at org.apache.catalina.connector.http.HttpProcessor.run(Unknown Source)
at java.lang.Thread.run(Thread.java:536)
</pre>
</body>
</html>
]
at org.apache.soap.rpc.Call.getEnvelopeString(Call.java:208)
at org.apache.soap.rpc.Call.invoke(Call.java:255)
at Example1_client.main(Example1_client.java:26)
bash-2.05$