gpt4 book ai didi

java - MTOM 是如何工作的 + 示例代码

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:24:13 24 4
gpt4 key购买 nike

我正在尝试制作一个非常简单的网络服务,它执行以下操作:

  1. 客户端点击网络服务请求文件。
  2. Web 服务的服务类查询一个哈希表,该哈希表具有键(搜索查询)和值作为文件(例如 pdf)的 base64 编码值
  3. 现在,我需要使用 MTOM 将哈希表中存储的 base64 编码值返回给客户端。

由客户端解码并将其转换为 pdf。

所以,这是我的问题:

  1. 我知道我们将文件编码为 base64 以便通过 Web 服务传输,但是 MTOM 在哪里出现以及如何出现?

  2. 有人可以为我提供一种使用 MTOM 并将数据发回的简单方法吗?我们是否也需要在 WSDL 中指定一些内容?还是一个简单的 String 返回类型就足够了?为什么/为什么不?

谢谢

我看过这个code .它使用了很多注释,我只需要一个使用 MTOM 的简单 java 代码。此处为 J2EE 新手 :)

更新 1

足够体面的解释here ,现在我需要从实现层面去理解它。好资料here , 但对于 .Net

更新 2

“createMTOM(int id)”方法的返回类型应该是什么??

最佳答案

您似乎混淆了实现和协议(protocol)。

MTOM 的规范是 here . This页面有示例消息。

如果您使用的是 JAX-WS 环境,您肯定会使用 Annotations 来打开它。如果您手动滚动 soap 消息,则可以编写生成它所需的任何 Java 代码。从本质上讲,MTOM 意味着数据的内容移动到附件,附件是邮件的一个单独的 MIME 部分,并通过带有 href 的 xop:Include 元素引用到 MIME 部分。

模式必须将 base64Binary 指定为元素类型,但附加属性给出了有关字节解释的提示:xmime:contentType 和 xmime:expectedContentType。根据我的经验,JAX-B 引用实现对这些的使用有一些限制。例如,您不能让它自动将文本来回转换为字节。在像 CXF 或 Glassfish 这样的典型套件中,您将数据放入 DataHandler,然后套件将其转换为附件。

关于java - MTOM 是如何工作的 + 示例代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2619435/

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