Scott, I have tried with the nightly build of Apache SOAP, and there is not more exception in the client when I use ExceptionFaultListener, and there is a exception in the server (is that a bug in the production version?, if it is, how could I fix that?), but I still have a problem:
I have seen the code of ExceptionFaultListener, and it takes the original exception, wraps it in a Parameter, puts the Parameter in a Vector, and puts the last one in the detail entries of the Fault (with method setDetailEntries). In the client side, when I've got a Fault, I get the detail entries Vector (with method getDetailEntries), take the first element of this Vector (the only one), and it is not of class Parameter; why?, shouldn't it be a Parameter? Anyway, this object (the first one of the detail entries Vector) is of class org.apache.crimson.tree.ElementNode2. Thanks very much, tizo >-- Mensaje original -- >Reply-To: [EMAIL PROTECTED] >From: "Scott Nichol" <[EMAIL PROTECTED]> >To: <[EMAIL PROTECTED]> >Subject: Re: fault listener >Date: Mon, 7 Jun 2004 09:51:19 -0400 > > >I'll note two things: > >1. If you can in your environment (e.g. it is not production), I suggest >you use the nightly build of Apache SOAP >(http://cvs.apache.org/dist/soap/nightly/2004-04-07/). > This fixes several bugs, adds a few features, and in particular will give >you more using exception information in the area you are having problems. > >2. One of the issues in 2.3.1 is that you will get the kind of generic error >you see below if you include whitespace in the name of the fault listener >class or misspell the class. For example, having the following in the deployment >descriptor will cause the exception you are seeing > > <isd:faultListener>org.apache.soap.server.DOMFaultListener > </isd:faultListener> > >because there is whitespace in the class name. Check your deployment descriptor. > >Scott Nichol > >Do not send e-mail directly to this e-mail address, >because it is filtered to accept only mail from >specific mail lists. >----- Original Message ----- >From: <[EMAIL PROTECTED]> >To: <[EMAIL PROTECTED]> >Sent: Monday, June 07, 2004 1:52 AM >Subject: fault listener > > >Hi there, > >I have been testing some services with no faultListener at all, and everything >worked right. I have tryed DOMFaultListener, and it works ok too. But I >have a problem with ExceptionFaultListener. > >When there is no exception generated at the server side, it works fine. >But when there is an exception, I can't access to the Fault, because an >exception is generated on the client side, at the moment of invoking the >service (RPCCall.invoke(url.....). The exception message is the following: > >[SOAPException: faultCode=SOAP-ENV:Protocol; msg=Unsupported response content >type "text/html; charset=ISO-8859-1", must be: "text/xml". >Response was: ><html><head><title>Apache Tomcat/5.0.18 - Informe de Error</title><style><!--H1 >{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} >H2 >{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} >H3 >{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} >BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} >B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} >P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A >{color : black;}A.name {color : black;}HR {color : #525D76;}--></style> ></head><body><h1>Estado HTTP 500 - </h1><HR size="1" >noshade><p><b>type</b> Informe de Excepción</p><p><b>mensaje</b> ><u></u></p><p><b>descripción</b> <u>El >servidor encontró un error interno () que hizo que no pudiera rellenar este >requerimiento.</u></p><p><b>excepción</b> ><pre>javax.servlet.ServletException: Error building response envelope: >java.lang.NullPointerException > org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:418) > javax.servlet.http.HttpServlet.service(HttpServlet.java:763) > javax.servlet.http.HttpServlet.service(HttpServlet.java:856) ></pre></p><p><b>nota</b> <u>La traza >completa de la causa de este error se encuentra en los archivos de diario >de Tomcat.</u></p><HR size="1" noshade><h3>Apache >Tomcat/5.0.18</h3></body></html> >] > >Can anyone help me?, do yo need more information about this error? > >Thanks very much, > >tizo > >