Service: ------- To install this service on an Apache-SOAP listener, you need to make the samples.excfault package available on the Apache-SOAP listener's classpath. Then deploy this service by filling in the deployment template using the info in the deployment descriptor in this directory or by using the service manager client: java org.apache.soap.server.ServiceManagerClient routerURL deploy dd.xml where routerURL is the URL of the SOAP RPC router and dd.xml is the name of the deployment descriptor file. For example: java org.apache.soap.server.ServiceManagerClient \ http://localhost:8080/soap/servlet/rpcrouter deploy DeploymentDescriptor.xml Client: ------ There is one HTTP client calls the throw1 service method. The service method throws an exception, which will be processed by the ExceptionFaultListener configured in the deployment descriptor. Additional Client Classpath Requirements: ---------------------------------------- ../.. Explanation: ----------- This demonstrates and tests the ExceptionFaultListener class. Sample Usage: ------------ java samples.excfault.ExcFaultClient \ http://localhost:8080/soap/servlet/rpcrouter Wire Dump: --------- *** REQUEST *** POST /soap/servlet/rpcrouter HTTP/1.0 Host: localhost:81 Content-Type: text/xml;charset=utf-8 Content-Length: 398 SOAPAction: "" Accept-Encoding: gzip *** RESPONSE *** HTTP/1.1 500 Internal Server Error Accept-Encoding: gzip Content-Type: text/xml;charset=utf-8 Content-Length: 3715 Date: Wed, 23 Jun 2004 03:24:15 GMT Server: Apache-Coyote/1.1 Connection: close SOAP-ENV:Server Exception from service object: This is thrown from ExcFaultService#throw1 /soap/servlet/rpcrouter 98 This is thrown from ExcFaultService#throw1 samples.excfault.ExcFaultException: This is thrown from ExcFaultService#throw1 at samples.excfault.ExcFaultService.throw1(ExcFaultService.java:30) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.soap.server.RPCRouter.invoke(RPCRouter.java:165) at org.apache.soap.providers.RPCJavaProvider.invoke(RPCJavaProvider.java:89) at org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:348) at javax.servlet.http.HttpServlet.service(HttpServlet.java:763) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688) at java.lang.Thread.run(Thread.java:534)