cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From liucong <liucon...@gmail.com>
Subject Re: How to implement the SOAP Fault for JMS Transport?
Date Wed, 10 Jun 2009 08:38:37 GMT
So, the JMS transport just copy JMS message properties to somewhere(For 
example, Message.PROTOCOL_HEADERS map). Then the SOAP binding add some 
extra interceptors (How to add these interceptors?) to deal with these 
properties (check the properties, throw some SOAP Faults, and so on).

Does it work? Is it Ok?



Daniel Kulp Writes:
> Ideally, to me, this type of fault mapping needs to be in the SOAP binding, 
> not the JMS transport.    The JMS transport needs to be somewhat independent 
> of soap so that it's usable for things like XML over JMS and possibly even 
> some resty things.
>
> Basically, the SOAP binding should examine it's transportId and if it's the 
> SOAP/JMS spec defined ID, it should add some extra interceptors to handle the 
> mapping of the "soap specific" things into the non-soap specific things in the 
> transport.  
>
> For example:  all the funky JMS headers that the SOAP/JMS spec requires should 
> be done from an interceptor provided by the SOAP binding (put them in the 
> Message.PROTOCOL_HEADERS map) that the JMS transport would just copy across.
>
> That said, I really haven't read the SOAP/JMS spec in very much detail so I'm 
> not sure if it's completely possible.   :-)
>
> Dan
>
>
> On Mon June 8 2009 10:54:18 pm liucong wrote:
>   
>> Hi,
>>
>> Willem Jiang Writes:
>>     
>>> Hi,
>>>
>>> I think you mean how to throw the fault from the JMS transport.
>>> Basically , if you throw the fault from a CXF interceptor, CXF's
>>> interceptors chain will take care of it and build the fault message and
>>> throw it out.
>>>
>>> If you want to check the Content type , you could write an interceptor
>>> and load it with your soap jms transport.
>>>       
>> How to load an interceptor with my soap jms transport? Is there any
>> material for help?
>>
>> Thank you.
>>
>>     
>>> But I think  you could take
>>> the soap binding (SoapBindingFactory) as an example, and put this kind
>>> of checking as a work of soap jms binding.
>>>
>>> Just my 2 cents,
>>>
>>> Willem
>>>
>>> liucong wrote:
>>>       
>>>> Hi all,
>>>>
>>>> When I implement the SOAP Over JMS Specification, I don’t know how to
>>>> implement SOAP fault for it.
>>>>
>>>> I use the org.apache.cxf.interceptor.Fault to record the Fault
>>>> information. For example, I create a Fault instance for SOAP fault
>>>> subcode contentTypeMismatch
>>>> (http://www.w3.org/TR/2008/WD-soapjms-20080723/#binding-faults). If I
>>>> check the fault the cxf-rt-transports-jms module, I don’t know how to
>>>> deal with the fault which is checked out.
>>>>
>>>> If I added an Interceptor for JMS transport, I can use the interceptor
>>>> to deal with the fault. Is It right?
>>>>
>>>> If it is Ok, how is the interceptor added to the interceptors according
>>>> to whether the jms transport is used or not?
>>>>
>>>> Are there any materials for interceptors, phases, and phase order?
>>>>
>>>> Thank you very much!
>>>>
>>>> Best regards,
>>>>
>>>> Liu
>>>>         
>
>   


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message