JMS Transport send MTOM message as a TextMessage. The attachment becomes wrong.
-------------------------------------------------------------------------------
Key: CXF-2207
URL: https://issues.apache.org/jira/browse/CXF-2207
Project: CXF
Issue Type: Bug
Components: Transports
Affects Versions: 2.2
Environment: Windowns XP2, JDK1.6.0_11
Reporter: Liu Cong
Fix For: 2.2
MTOM over SOAP/JMS doesn't work.
Thought the client send attachement information and the server get the
attachment information, the attachment which is got by the server is not the
same with the attachment information which is sent by the client.
I have compared the two messages. And I have used several kinds of attatchment
for it.
1) Text File. The result is right.
2) WinRaR File. The file that is received by the server is larger than the
file that is sent by the client.
3) BitMap file. The size of attachment that is sent by the client is
163166, but the size of attachment that is received is 485947, which is 167%
more than the original binary data.
(http://www.w3.org/TR/2008/WD-soapjms-20081121/#binding-message-body)
According to the analysis above, reason may be as follows:
1) In the client, the attachment is encoded as base64 encoding, and
transfer as TextMessage in JMS.
2) The server doesn't know the encoding, and just get the text message.
The current implementation send all the messages as TextMessage because
jmsConfig variable in JMSConduit is not initialized according to the
MessageType of SOAPMessage. jmsConfig is just configed in wsdl. If the wsdl
doesn't have messagetype information, it goes wrong.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.