- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试将带有 axis1.4 客户端的文件发送到 jaxws 服务。我的客户端代码如下。
System.out.println(service.getCalcImplPort().getFile(new DataHandler(new DataSource() {
@Override
public OutputStream getOutputStream() throws IOException {
// TODO Auto-generated method stub
return null;
}
@Override
public String getName() {
// TODO Auto-generated method stub
return "abc.txt";
}
@Override
public InputStream getInputStream() throws IOException {
InputStream bs = new ByteArrayInputStream("Hello world".getBytes());
return bs;
}
@Override
public String getContentType() {
// TODO Auto-generated method stub
return "application/soap+xml";
}
})));
当我从 tcpmon 查看时,我看到生成了下面的消息。
------=_Part_0_1601756168.1386618236799
内容类型:文本/xml;字符集=UTF-8内容传输编码:二进制内容编号:
------=_Part_0_1601756168.1386618236799内容类型:application/soap+xml内容传输编码:二进制内容编号:
Hello World ------=_Part_0_1601756168.1386618236799--
XML部分是
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><getFile xmlns="http://ws.kasim.com/"><arg0 href="cid:5C354342D8307DD2EC87841AD94BCCB0" xsi:type="xsd:base64Binary" xmlns=""/></getFile></soapenv:Body></soapenv:Envelope>
当我在服务器端检查时,我发现服务的 DataHandler 参数没有发送数据。首先,这是一条有效的 mtom 消息吗?如果没有,有人可以告诉我这里缺少什么吗?
谢谢。
最佳答案
我在互联网上搜索了很长时间后找到了解决方案。问题是我没有在客户端 stub 文件中设置 mtom 属性。添加下面的代码后,它开始工作。我没有删除问题,可能有人需要它。
call.setProperty(Call.ATTACHMENT_ENCAPSULATION_FORMAT, Call.ATTACHMENT_ENCAPSULATION_FORMAT_MTOM);
关于java - axis1.4客户端使用Mtom发送文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20479408/
我们有一个非常简单的 WS,使用注释实现。我们希望能够从支持和不支持 MTOM/XOP 的客户端调用它。现在,它被简单地注释为@MTOM。 它接受包含(除其他外)base64Binary 元素的请求,
MTOM 是 W3C 消息传输优化机制,是一种高效地向 Web 服务发送二进制数据或从 Web 服务发送二进制数据的方法。 一般来说它是如何工作的? 最佳答案 这一切都始于 SOAP 是XML这一事实
我刚刚开始使用 SOAP Web 服务,偶然发现了 MTOM。 根据以下用例,我需要了解两件事:用户将通过传递图像来调用 SOAP Web 服务。作为响应,他们将获得同一图像的格式化版本。 我知道我需
如何配置自定义绑定(bind)和 MTOM 编码?我有一个自定义绑定(bind),如下所示,
我必须使用外部 Web 服务,但出现以下错误: The maximum buffer size (65536) has been exceeded while reading MTOM data 在今
我一直在使用一些代码通过使用来自 MSDN 的代码来创建 MTOM . 好像有错误,我不明白问题出在哪里,因为论坛上的一位用户指出有错误。 文件 (JPEG) 数据在反序列化后损坏。完整代码如下。
我有以下 mtom 响应作为字符串 --uuid:6b6fab3b-c481-4648-9eb5-8690096eb54d Content-Type: application/xop+xml; cha
作为我的 worklight 项目的一部分,我们正在调用一个 Web 服务,该服务将图像文件作为 MTOM 附件发送。有没有办法解析图像内容并转换为 JSON 对象?下面是我配置服务调用的适配器中的一
我正在尝试制作一个非常简单的网络服务,它执行以下操作: 客户端点击网络服务请求文件。 Web 服务的服务类查询一个哈希表,该哈希表具有键(搜索查询)和值作为文件(例如 pdf)的 base64 编码值
Java XML 验证是否支持启用了 MTOM 的消息?验证期间抛出以下错误。 cvc-type.3.1.2: Element 'ns2:myblobData' is a simple type, s
我正在使用 MTOM 将附件从客户端流式传输到服务器。 MTOM 得到应用,文件以二进制形式流式传输。但是根 Content-Type 始终是 "text/xml",应该是 "application/
SAAJ: SOAP with Attachments API for Java MTOM: SOAP消息传输优化机制 我的简单理解:它们处理 SOAP 附件,MTOM 是 SAAJ 的更优化版本。它
我正在寻找使用 JAX-WS RI 或基于 Axis2 的简单、有效的示例 MTOM 示例代码(服务 + 客户端)。 我在 google 上搜索这个词只是为了找到不能简单工作的片段和代码! 我想将 P
我们的应用程序使用 SOAP 将文件附件发送到 Web 服务。该服务在 Oracle Service Bus 11g 上运行。我们在客户端使用Spring WS + SAAJ + MTOM来发送请求。
我们有一个用例,我们必须通过 http 将大数据文件从环境 A 传输到环境 B。我们想要实现的是,发送方将数据分块发送,接收方开始将数据分块写入文件。因此我们决定使用 MTOM。 网络服务代码: @M
我将在早上用代码示例更新此内容,但我有一个基本的 JAX-WS 实现,用于通过 MTOM 下载生成的文件,并且当我在 SOAPUI 中测试它时附加的文件甚至有一个随机文件名尽管我传递给 DataHan
我正在尝试做非常简单的事情:客户端通过其 WSDL 调用 SOAP 服务来加载 PDF 文档。 我正在使用 Apache CXF 2.7.5 和 MTOM 问题是文档似乎没有完全发送到客户端(文件大小
对于一个项目,我正在使用 Apache Axis2 1.6.2 实现 SOAP 服务。我有一项服务需要使用 MTOM 接收文件。但遗憾的是我在接收 MTOM 附加文件时一直遇到问题。我不断收到异常:
我在 Java 1.6 中使用 JAX-WS 的引用实现。在我的服务器上,我有 Web 服务方法,它返回一个带有附件作为 javax.activation.DataHandler 的响应。 File
这是我已经回答过的那些“问题”之一,但是根据一周的谷歌搜索,我发布的信息似乎几乎为零。 TL;DR:WCF MTOM 编码的 BasicHttpBinding 客户端到外部/第三部分,非 .NET W
我是一名优秀的程序员,十分优秀!