Are you using SOAP 1.1 or SOAP 1.2? 
The parameters you're using to throw the fault look like SOAP 1.2, but
the stack trace shows SOAP 1.1 elements.

Also, you need to qualify your TEST code -- it shouldn't be in the
soapenv namespace. (You really should use the standard SOAP fault
codes [Client, Server, VersionMismatch, and MustUnderstand] and use
the fault string/reason to specify your specific fault info.)

Your stack trace indicates that you are invoking a native method,
though. Don't know where that's coming from...

Anne

On 7/1/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> I'm having a problem with throwing an AxisFault in my main service class.
> I have handlers that throw AxisFaults fine, but I have
> conditions I need to check inside my main service class where I need to
> throw a fault.  When I throw the AxisFault, I actually
> catch an exception on the throw.  Below is the code and the stack trace in
> my service class.  Can anyone tell me what I might
> be doing wrong?  Your help is greatly appreciated...
> 
> Thanks,
> Mark
> 
> Method Signature
> 
> public String submitDTS(String payload) throws java.rmi.RemoteException
> 
> Code
> 
> if("test".equals(payload))
> {
>       fault = new AxisFault();
>       fault.setFaultCodeAsString("TEST");
>       fault.setFaultReason("DTS Test Error");
>       fault.addFaultDetailString("Test Error 1234567890");
>       throw fault;
> }
> 
> Stack Trace
> 
> AxisFault
>  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}TEST
>  faultSubcode:
>  faultString: DTS Test Error
>  faultActor:
>  faultNode:
>  faultDetail:
>         {http://xml.apache.org/axis/}stackTrace: AxisFault
>  faultCode:
> {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
>  faultSubcode:
>  faultString:
>  faultActor:
>  faultNode:
>  faultDetail:
> 
> 
>         at
> com.datatransportstandard.referenceimplementation.service.DTSCoreService.submitDTS(DTSCoreService.java:69)
>         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.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:402)
>         at
> org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:309)
>         at
> org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:333)
>         at
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
>         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
>         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
>         at
> org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:481)
>         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
>         at
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:854)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
>         at
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
>         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:256)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
>         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:564)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195)
>         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:564)
>         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:564)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
>         at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:211)
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:805)
>         at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:696)
>         at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:605)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:677)
>         at java.lang.Thread.run(Thread.java:534)
> 
>         {}string: Test Error 1234567890
> 
> DTS Test Error
>         at
> com.datatransportstandard.referenceimplementation.service.DTSCoreService.submitDTS(DTSCoreService.java:69)
>         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.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:402)
>         at
> org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:309)
>         at
> org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:333)
>         at
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
>         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
>         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
>         at
> org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:481)
>         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:323)
>         at
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:854)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
>         at
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
>         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:256)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:564)
>         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:564)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:195)
>         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:564)
>         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:564)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
>         at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:211)
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:805)
>         at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:696)
>         at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:605)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:677)
>         at java.lang.Thread.run(Thread.java:534)
> 
> 
> 
>

Reply via email to