【问题标题】:Spring SOAP Mtom attachment's identifier encoding problemSpring SOAP Mtom 附件的标识符编码问题
【发布时间】:2021-11-24 09:39:19
【问题描述】:

我在我的 Spring Boot (2.5.5) 服务器中创建了一个 SOAP 客户端。 信封已编组,通信正常,但出现错误,提示我未附加二进制(文件)数据。

在我的日志文件中,soap 消息有它并且有一个二进制附件。

唯一奇怪的是,在包含标签中,href 属性有一个 %40 字符,而不是像这样的 @ 字符:

...
<ns2:DocuData xmlns:ns2="namespace 1">
   <ns2:fileContent>
    <xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" 
                 href="cid:946ff3f8-e725-4cca-8108-676403be336f%40domain.hu"/>
   </ns2:fileContent>
</ns2:DocuData>
...

在多部分数据部分中,Content-ID 是:

...
------=_Part_1_22457057.1633284795352
Content-Type: application/octet-stream
Content-ID: <946ff3f8-e725-4cca-8108-676403be336f@domain.hu>
Content-Transfer-Encoding: binary

...
content
...
------=_Part_1_22457057.1633284795352--

这是问题的原因吗?我该如何解决?

感谢您的帮助!

【问题讨论】:

    标签: spring soap binary attachment mtom


    【解决方案1】:

    这是我的错!当我在拦截器中记录请求时,我从流中读出了数据。我关闭了日志记录,消息发送成功。

    【讨论】:

      猜你喜欢
      • 2011-04-21
      • 2017-06-11
      • 2012-08-05
      • 2012-05-22
      • 2018-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多