You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by heidim <he...@ca.com> on 2009/09/17 08:11:43 UTC

How to get CXF BC to create a JBI Fault?

Hi,

I'm using a CXF-BC provider to call an external web service using SOAP/HTTP.

The external web service returns a SOAP Fault.

The CXF-BC strips the SOAP wrapping from the message (as expected) and then
passes the <soap:Fault>....</soap:Fault> xml to the service it is acting as
a provider for.

I was hoping the CXF-BC would recognise the SOAP Fault, and create a JBI
Fault to be sent to the service it is acting a provider for.

Is there a configuration option for CXF-BC that will create a JBI Fault from
a SOAP Fault?

Thx,
Heidi
-- 
View this message in context: http://www.nabble.com/How-to-get-CXF-BC-to-create-a-JBI-Fault--tp25485729p25485729.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: How to get CXF BC to create a JBI Fault?

Posted by heidim <he...@ca.com>.
Hi,

Thx, I'm now seeing the JBIFault, but the content appears to be invalid.

The JBIFault xml generated is:
<?xml version="1.0" encoding="UTF-8"?>
<JBIFault xmlns="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper">
<soap:Text xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xml:lang="en">Exception of type something was thrown.</soap:Text>
</JBIFault>

This format isn't handled by Apache ODE. The error I see is:
Failure during invoke: Invalid NMS message format, expected
{http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper}part but found
{http://www.w3.org/2003/05/soap-envelope}Text

Is there something else I need to configure?

Thx,
Heidi 


Freeman Fang wrote:
> 
> Hi,
> 
> What's your xbean.xml for your cxf bc provider?
> If you want a JBI fault, you shouldn't put useJBIWrapper="false" in it
> Freeman
> On 2009-9-17, at 下午2:11, heidim wrote:
> 
>>
>> Hi,
>>
>> I'm using a CXF-BC provider to call an external web service using  
>> SOAP/HTTP.
>>
>> The external web service returns a SOAP Fault.
>>
>> The CXF-BC strips the SOAP wrapping from the message (as expected)  
>> and then
>> passes the <soap:Fault>....</soap:Fault> xml to the service it is  
>> acting as
>> a provider for.
>>
>> I was hoping the CXF-BC would recognise the SOAP Fault, and create a  
>> JBI
>> Fault to be sent to the service it is acting a provider for.
>>
>> Is there a configuration option for CXF-BC that will create a JBI  
>> Fault from
>> a SOAP Fault?
>>
>> Thx,
>> Heidi
>> -- 
>> View this message in context:
>> http://www.nabble.com/How-to-get-CXF-BC-to-create-a-JBI-Fault--tp25485729p25485729.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
> 
> 
> -- 
> Freeman Fang
> ------------------------
> Open Source SOA: http://fusesource.com
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/How-to-get-CXF-BC-to-create-a-JBI-Fault--tp25485729p25503110.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: How to get CXF BC to create a JBI Fault?

Posted by Freeman Fang <fr...@gmail.com>.
Hi,

What's your xbean.xml for your cxf bc provider?
If you want a JBI fault, you shouldn't put useJBIWrapper="false" in it
Freeman
On 2009-9-17, at 下午2:11, heidim wrote:

>
> Hi,
>
> I'm using a CXF-BC provider to call an external web service using  
> SOAP/HTTP.
>
> The external web service returns a SOAP Fault.
>
> The CXF-BC strips the SOAP wrapping from the message (as expected)  
> and then
> passes the <soap:Fault>....</soap:Fault> xml to the service it is  
> acting as
> a provider for.
>
> I was hoping the CXF-BC would recognise the SOAP Fault, and create a  
> JBI
> Fault to be sent to the service it is acting a provider for.
>
> Is there a configuration option for CXF-BC that will create a JBI  
> Fault from
> a SOAP Fault?
>
> Thx,
> Heidi
> -- 
> View this message in context: http://www.nabble.com/How-to-get-CXF-BC-to-create-a-JBI-Fault--tp25485729p25485729.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>


-- 
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com