cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <willem.ji...@gmail.com>
Subject Re: How to determine whether a soap message have an attachment
Date Thu, 07 May 2009 03:35:03 GMT
Yes, I confirmed that.
Please feel free to add your comments and patch on the JIRA CXF-1760.

We can add a check point in the JMSConduit.sendExchange() to show some
warning or throw the exception if the user forget to add the messageType
configuration.

Willem


liucong wrote:
> If the config <jms:client messageType="byte"/> doesn't appear in the
> WSDL of the service. The current implementation of JMS Transport will
> send MTOM message as TextMessage. So in current implementation, if one
> wants to use JMS MTOM-support, the config <jms:client
> messageType="byte"/> must be set, then the MTOM message will be sent as
> ByteMessage.
> 
> Willem Jiang wrote:
>> After digging the code, I found we could know if the Message has
>> attachments by looking the message in the JMSConduit.sendExchange()
>> method. We can tell if the message is MTOM enabled and has the
>> attachement message, then we just make sure the JMS Message type is
>> BytesMessage that should be OK.
>>
>> BTW, Freeman did some work to make the JMS transport support MTOM[1]
>>
>> [1] http://issues.apache.org/jira/browse/CXF-1760
>>
>> Willem
>>
>> Willem Jiang wrote:
>>   
>>> Hi,
>>>
>>> If we defer the creation of JMS Message until we know the Content-Type
>>> for the client, we still need to flight with the miss configuration of
>>> MTOM with TextMessage on the server side.
>>>
>>> Current solution , I discussed with Liu Cong is if the MTOM is enabled,
>>> CXF JMS transport will check the configuration of the JMS message type,
>>> and make sure the JMS message type is BytesMessage, if not, the JMS
>>> transport will throw an Exception for it.
>>>
>>> Any thought?
>>>
>>> Willem
>>>
>>> Daniel Kulp wrote:
>>>     
>>>> On Wed May 6 2009 9:15:54 am Willem Jiang wrote:
>>>>       
>>>>> Hi
>>>>>
>>>>> I think MTOM message should have the attachment info, we could check
>>>>> that for it. We have some trouble to send the MTOM message if we send
>>>>> the message in Text model, and Liu Cong is working on the patch.
>>>>>         
>>>> Hmm....    the message won't have the attachment info at "prepare" time.
  
>>>> Whether to switch to mtom/mime or not is done later on, in the 
>>>> AttachmentOutInterceptor.    The actual creation of the JMS message might
need 
>>>> to be deferred until the first call to write on the cached output stream
or 
>>>> something.   At that point, the Content-Type should be set to the mime version

>>>> and thus could be determined if it needs to be a binary message or not.
>>>>
>>>> Dan
>>>>
>>>>
>>>>
>>>>       
>>>>> Willem
>>>>>
>>>>> Daniel Kulp wrote:
>>>>>         
>>>>>> Doesn't it already support MTOM?
>>>>>>
>>>>>> Basically, it provides a OutputSteam to the dispatching and if the
>>>>>> runtime needs to handle attachments and such, it will write it as
mime
>>>>>> stuff to the stream.
>>>>>>
>>>>>> Dan
>>>>>>
>>>>>> On Tue May 5 2009 12:53:48 am liucong wrote:
>>>>>>           
>>>>>>> Hi all,
>>>>>>>
>>>>>>> When I want to add MTOM support for SOAP/JMS, I should know whether
a
>>>>>>> soap message have an attachment. But I don't know the details
how to
>>>>>>> judge wheter the message have an attachment.
>>>>>>> Is anyone give me any prompt about where the code is? Or some
code
>>>>>>> example?
>>>>>>>
>>>>>>> Thank you very much.
>>>>>>>
>>>>>>> Best regards
>>>>>>>
>>>>>>> Liu
>>>>>>>             
>>>     
>>
>>   
> 
> 


Mime
View raw message