You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Madeleine Wright <m....@ru.ac.za> on 2005/01/09 01:20:21 UTC

BeanMapping for Fault in wsdd file

HELP please someone!!  I'm trying to include a SOAP fault in my wsdl 
file etc.  I've read the axis-1_2RC1\samples\faults examples code 
carefully and tried to model it for my own service.  I have a bean-type 
class, TransportFault, that extends RemoteException.  The fault is 
thrown in my service class in exactly the way that it is in EmployeeInfo 
and it works except that, without a type mapping, I do not get the info 
message in the faultstring - just the type of error that it is.   If I 
deploy the wsdd file without the type mapping, I get no error message. 
But when I deploy the service using the type mapping exactly as it is in 
the faults example (using my own parameters), the error output is as 
below.

Please can anyone suggest how I can map the fault so that the error info 
captured in the Fault class can be passed back as the faultstring??

Thanks!

Madeleine

WSDD file
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
             xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
  <service name="WebIndexerImpl" style="wrapped" use="literal">
   <requestFlow>
       <handler type="soapmonitor"/>
   </requestFlow>
   <responseFlow>
       <handler type="soapmonitor"/>
   </responseFlow>
   <requestFlow>
       <handler type="track"/>
   </requestFlow>

   <parameter name="className" value="WI.WebIndexerImpl"/>
   <parameter name="allowedMethods" value="doIndex"/>
   <parameter name="scope" value="request"/>
   <operation name="doIndex" qname="tns.doIndex" 
xmlns:tns="http://WI" 		returnType="xsd:string">
   	<parameter name="address" type="xsd:string" 
xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
   	<parameter name="name" type="xsd:string" 
xmlns:tns="http://www.w3.org/2001/XMLSchema"/>
   	<fault name="TransportFault" qname="fns:fault" 
xmlns:fns="http://localhost:8080/axis/services/WebIndexerImpl" 
class="WI.TransportFault" type="tns:TransportFault" xmlns:tns="http://WI"/>	
   </operation>

   <typeMapping
     xmlns:ns="http://WI"
     qname="ns:TransportFault"
     type="WI.TransportFault"
     serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
     deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
     encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
   />
  </service>
</deployment>

ERROR OUTPUT
WARN  org.apache.axis.wsdl.fromJava.Types - The class 
java.lang.Throwable is defined in a java or javax package and cannot be 
converted into an xml schema type.  An xml schema anyType will be used 
to define this class in the wsdl file.
ERROR org.apache.axis.deployment.wsdd.WSDDDeployableItem - Unable to 
deploy typemapping: {http://WI}TransportFault

org.apache.axis.deployment.wsdd.WSDDNonFatalException: 
java.lang.ClassNotFoundException: Found
languageSpecificType namespace '', expected 
'http://xml.apache.org/axis/wsdd/providers/java'
java.lang.ClassNotFoundException: Found languageSpecificType namespace 
'', expected 'http://xml.apache.org/axis/wsdd/providers/java'
         at 
org.apache.axis.deployment.wsdd.WSDDTypeMapping.getLanguageSpecificType(WSDDTypeMapping.java:174)
         at 
org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:529)
         at 
org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:245)
         at 
org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:225)
         at 
org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:204)
         at 
org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:78)
         at org.apache.axis.utils.Admin.processWSDD(Admin.java:110)
         at org.apache.axis.utils.Admin.process(Admin.java:157)
         at org.apache.axis.utils.Admin.AdminService(Admin.java:64)
         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:585)
         at 
org.apache.axis.providers.java.MsgProvider.processMessage(MsgProvider.java:126)
         at 
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
         at 
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at 
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:450)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285)
         at 
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:637)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at 
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:301)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
         at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
         at 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
         at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:595)

         at 
org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:543)
         at 
org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:245)
         at 
org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:225)
         at 
org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:204)
         at 
org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:78)
         at org.apache.axis.utils.Admin.processWSDD(Admin.java:110)
         at org.apache.axis.utils.Admin.process(Admin.java:157)
         at org.apache.axis.utils.Admin.AdminService(Admin.java:64)
         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:585)
         at 
org.apache.axis.providers.java.MsgProvider.processMessage(MsgProvider.java:126)
         at 
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
         at 
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at 
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:450)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285)
         at 
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:637)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at 
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:301)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
         at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
         at 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
         at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:595)

         at 
org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:543)
         at 
org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:245)
         at 
org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:225)
         at 
org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:204)
         at 
org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:78)
         at org.apache.axis.utils.Admin.processWSDD(Admin.java:110)
         at org.apache.axis.utils.Admin.process(Admin.java:157)
         at org.apache.axis.utils.Admin.AdminService(Admin.java:64)
         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:585)
         at 
org.apache.axis.providers.java.MsgProvider.processMessage(MsgProvider.java:126)
         at 
org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
         at 
org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
         at 
org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:450)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285)
         at 
org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:637)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
         at 
org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:301)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at 
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
         at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
         at 
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
         at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
         at java.lang.Thread.run(Thread.java:595)