gpt4 book ai didi

java - 是否需要为客户端和服务器代码指定 MTOM

转载 作者:行者123 更新时间:2023-11-30 06:19:12 24 4
gpt4 key购买 nike

我刚刚开始使用 SOAP Web 服务,偶然发现了 MTOM。

根据以下用例,我需要了解两件事:用户将通过传递图像来调用 SOAP Web 服务。作为响应,他们将获得同一图像的格式化版本。

  1. 我知道我需要在客户端中 setMTOMEnabled(true) 但我是否也必须在服务中提及它。另外,当生成 WSDL 时,我如何知道该服务使用 MTOM?
  2. 当客户端发送二进制数据时,则必须在客户端代码中提及 MTOM,但如果客户端发送文本数据而服务器发送二进制数据,则客户端是否也必须使用 MTOM?

最佳答案

当我收集更多信息并更新此答案时,我将进一步详细说明,但关于问题一“JAX-WS 应用程序需要单独配置客户端和服务器工件以启用 MTOM 支持”和“WSDL 文件包含 xsd :base64Binary 或 xsd:hexBinary 二进制数据的元素定义。”并且它还可能包含“xmime:expectedContentTypes”

第二,我相信这回答了您的问题“JAX-WS 应用程序需要单独配置客户端和服务器工件以启用 MTOM 支持”

但还是再次为您检查。

您在 WSDL 中看到的更多示例

<xs:complexType name="ImageDepot">
<xs:sequence>
<xs:element name="imageData" type="xs:base64Binary" xmime:expectedContentTypes="image/jpeg"/>
</xs:sequence>
</xs:complexType>
........
</types

MIME类型和Java类型的映射。描述 MIME 类型和 Java 类型之间的映射。

MIME Type Java Type

image/gif - java.awt.Image

image/jpeg - java.awt.Image

text/plain - java.lang.String

text/xml - javax.xml.transform.Source

application/xml javax.xml.transform.Source

/ javax.activation.DataHandler

所以关于你的第二个问题,我相信文本仍然会被视为附件,但具有文本/纯文本类型

关于java - 是否需要为客户端和服务器代码指定 MTOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48545154/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com