我正在尝试创建一个肥皂客户端,它将需要从政府托管的服务中连接和下载文件。该服务使用WS-Security,并将文件作为附件与MTOM一起传输。
我尝试了一些SOAP库,并进行了搜索,但是找不到任何暗示有Java库能够执行此操作的信息。
有任何想法吗?
我试过了:
具有WSS4J的CXF,
带有Rampart的AXIS2
谢谢
最佳答案
MTOM使用XOP以便从信封中提取二进制内容,并为其添加引用,以这种方式,肥皂信封要轻得多,因此解析/处理速度更快。
出于这个原因,在肥皂包封内,您会发现结构为(仅带有引用)
<m:photo xmlmime:contentType='image/png'>
<xop:Include xmlns:xop='http://www.w3.org/2004/08/xop/include'
href='cid:http://example.org/me.png'/>
</m:photo>
由于二进制内容不在肥皂消息之内,因此WS-Security将无法使用它。