Hi Dan, What change do I need to make to my cxf.xml to use the workaround you suggest? I tried just adding the bean, but apparently it doesn't have a default ctor.
Thanks, Dhiraj. > -----Original Message----- > From: Daniel Kulp [mailto:[EMAIL PROTECTED] > Sent: Friday, February 29, 2008 12:47 PM > To: [email protected] > Cc: Bokde, Dhiraj > Subject: Re: SOAPFaultException from Provider not written to SOAP response > > > It doesn't seem to be working anyway you look at it. I have a fix I'm > testing now. :-( > > The "workaround" right now that MIGHT work would be to use spring > configuration to > org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor > to the outFaultChain of the service. That's what my fix is basically > doing. Currently, in provider mode, the outFaultChain isn't putting > the proper soap:env/body in place cause that interceptor is missing. > > Dan > > > On Thursday 28 February 2008, Bokde, Dhiraj wrote: > > Hi, > > > > I am using CXF version 2.0.4-incubator in an application that > > implements the JAX-WS Provider<Source> interface. The application > > throws a SOAPFaultException on error, but the client gets the HTTP > > message below, which does not have a SOAP Envelope and hence cannot be > > parsed. > > > > The code snippet that throws the SOAPFaultException is also included. > > What's the right way of creating and throwing a SOAPFaultException? > > > > <snip> > > Message errMessage = new Message("UNEXPECTED_ERROR", > > BUNDLE, e.getMessage()); > > LOG.error(errMessage, e); > > Fault fault = new Fault(errMessage)); > > SOAPFault soapFault = > > SOAPFactory.newInstance().createFault(); > > soapFault.setFaultCode(fault.getFaultCode()); > > soapFault.setFaultString(fault.getMessage()); > > throw new SOAPFaultException(soapFault); > > <snip> > > > > <snip> > > -------------------------------------- > > Feb 28, 2008 1:03:57 PM > > org.apache.cxf.interceptor.LoggingInInterceptor logging > > INFO: Inbound Message > > ---------------------------- > > Encoding: UTF-8 > > Headers: {Content-Length=[342], Server=[Jetty(6.1.6)], > > content-type=[text/xml; c > > harset=utf-8]} > > Messages: > > Message: > > > > Payload: <ns1:Fault > > xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/"><faultcode > > xmlns:ns2="http://cxf.apache.org/faultcode">ns2:server</faultcode><fau > >lt string>Invalid Request Message: [Line: -1, Column: -1: Empty XML > > response from validation script: > > identity.xslt].</faultstring></ns1:Fault> > > -------------------------------------- > > <snip> > > > > > > Regards, > > Dhiraj. > > > > Dhiraj Bokde > > Principal Consultant > > [EMAIL PROTECTED] > > ---------------------------------------------------------- > > IONA Technologies PLC > > 1-800-ORBIX-4U > > http://www.iona.com > > Making Software Work Together > > ---------------------------------------------------------- > > > > -- > J. Daniel Kulp > Principal Engineer, IONA > [EMAIL PROTECTED] > http://www.dankulp.com/blog
