Cxf Mtom客户端找不到附件

问题描述

我正在一个项目上,该项目正在调用Web服务来添加附件和获取附件。

我使用cxf客户端和spring boot,我的wsdl合同对附件使用二进制变量,该附件使用字节数组发送和接收二进制,我在代码中启用了Mtom,并在cxf客户端中添加了启用了mtom的属性

我成功地将映像添加到服务器并能够验证。

但是,当我尝试通过调用Web服务来获取附件时,得到的所有变量(字节数据除外)都作为响应。但是,当我查看日志时,会看到信封外面的附件。

我也通过soap ui进行了检查,并能够通过soapui提取附件。但我不确定为什么没有附件填充字节字段,因为有响应。

我也遵循了cxf文档,并将字节更改为Datahandler,但同样,我可以成功上传到服务器,但是在获取时,我没有用响应的二进制数据填充对象。

我正在使用cxf和spring boot。我是Mtom的新手,不确定为什么cxf找不到附件,也没有从响应中加载它。

以下是我根据日志得到的响应:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><ABCResponse message="Success" ><model><attachments><cmn:attachment href="cid:5f75fbe04c8e5001e2936798" len="28027" name="ABC.PNG" type="application/octet-stream" xmime:contentType="application/octet-stream"/></attachments></instance></model></ABCResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
------=_Part_190_12732427.1601696371077
Content-Type: application/octet-stream
Content-Location: ABC.PNG
Content-ID: <5f75fbe04c8e5001e2936798>
Content-transfer-encoding: binary

�PNG

   
IHDR  �   �   $\X�   sRGB ���   gAMA  ���a      pHYs  �  ��o�d  mIDATx^�ە$;˵�My
jsڙ�cߖ-���
------=_Part_190_12732427.1601696371077--

不确定为什么cxf找不到它。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)