I kept hitting this problem (using the Sun JAX-WS code in preference to CXF) and couldn't find a concrete definition of a solution for it. So when I got my solution I blogged it: http://yaytay.wordpress.com/2010/03/06/lsned-29-persuading-jdk-6-to-use-cxf-classes-rather-than-its-own-avoiding-seistub/

Jim

Quoting Daniel Kulp <[email protected]>:

On Wednesday 30 June 2010 2:33:10 pm Pham Duc Tri wrote:
so CXF2 is using Sun implementation for deciphering SOAP fault message.

No.  CXF doesn't use the Sun implementation for any of this.  What I'm saying
is that CXF isn't involved here at all. Check the classpath and such to make
sure the CXF jars are available.   If using the normal JAX-WS code, make sure
the appropriate META-INF/services/javax.xml.ws.spi.Provider file is there that
would normally be provided by either the big cxf bundle jar or the cxf-rt-
frontend-jaxws jar.

Dan



Do
you know what the root cause of this exception ? I have been looking for
the documentation's section that talks about SOAP fault message handling
in CXF2. It would help if I could see it.

Thanks

On Wed, Jun 30, 2010 at 10:01 AM, Daniel Kulp <[email protected]> wrote:
> This isn't using CXF on the client side.  It's using the Sun reference
> implementation built into the JDK.
>
> Dan
>
> On Tuesday 29 June 2010 4:20:11 pm Pham Duc Tri wrote:
> > hello, I use CXF2 to generate a WSDL consumer. Somehow the code
> > generated by CXF2 was unable to handle SOAP fault message. Here's the
> > exception that's being thrown :
> >
> >
> >
> > Caused by: java.lang.ClassCastException:
> > com.sun.xml.bind.v2.runtime.JAXBContextImpl cannot be cast to
> > com.sun.xml.internal.bind.api.JAXBRIContext
> >
> >        at
>
> com.sun.xml.internal.ws.fault.SOAPFaultBuilder.<clinit>(SOAPFaultBuilder.
> ja
>
> > va:533) ... 50 more
> >
> > This is the raw http response by the WSDL service:
> >
> >
> > HTTP/1.1 500 Internal Server Error
> > Connection: close
> > Date: Tue, 29 Jun 2010 20:14:40 GMT
> > Server: Microsoft-IIS/6.0
> > X-Powered-By: ASP.NET <http://asp.net/>
> > eaihttprespstatus: 500
> > dispatcherrortext: [0] INVALID_INPUT OR DATA_ERROR(SBL-BPR-00131)
> > (WF_ERR_CUSTOM_1)
> > siebel-error-symbol-1: WF_ERR_CUSTOM_1
> > cache-control: no-cache, must-revalidate, max-age=0
> > pragma: no-cache
> > siebel-error-message-1: INVALID_INPUT OR DATA_ERROR(SBL-BPR-00131)
> > content-type: text/xml;charset=UTF-8
> > content-length: 580
> >
> >
> > <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
>
> "><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><f
> au
>
> > ltstring>INVALID_INPUT OR
> > DATA_ERROR(SBL-BPR-00131)</faultstring><detail><siebelf:errorstack
> > xmlns:siebelf="http://www.siebel.com/ws/fault
>
> "><siebelf:error><siebelf:errorsymbol>WF_ERR_CUSTOM_1</siebelf:errorsymbo
> l>
>
> > <siebelf:errormsg>INVALID_INPUT OR
>
> DATA_ERROR(SBL-BPR-00131)</siebelf:errormsg></siebelf:error></siebelf:err
> or
>
> > stack></detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
> >
> > This looks very standard SOAP Fault message. Yet a ClassCast exception
> > is being thrown. Does anyone know what happens ?
> >
> > Thanks
>
> --
> Daniel Kulp
> [email protected]
> http://dankulp.com/blog

--
Daniel Kulp
[email protected]
http://dankulp.com/blog




----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

Reply via email to