问题标签 [mtom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1693 浏览

streaming - 带有安全拦截器的 Spring WS 流附件的问题

我在让 Spring WS 接收附加文件并使用流式传输的请求时遇到问题。问题是每当我尝试使用安全拦截器时都会出现以下异常:

我正在使用 Axiom 消息工厂:

我的端点映射使用 wss4jSecurityInterceptor:

并且我的安全拦截器已设置为确保它不使用有效负载:

问候,克雷格

0 投票
1 回答
1876 浏览

java - JAXB2 Mtom 附件被 BOM 破坏

我正在使用 JAXB2 在 Spring-WS 中执行 OXM。我指定的 XSD 需要将一个大型 XML 文件附加到 soap 消息中,因此我使用 MTOM 传输文件并在我的 JAXB2Marshaller 上启用了 MTOM。

当 JAXB2 编组具有预期 mime 类型的 text/xml 的 MTOM 附件时,它将该元素作为 javax.xml.transform.Source 对象提供。经过一番搜索,我能够找出如何将该 Source 对象发送到文件。

我遇到的问题是,当我将 UTF-8 编码文件作为附件发送时,出现以下错误:

这是由文件中编码文本前面的字节顺序标记引起的,尽管 UTF-8 编码文件中不需要此 BOM,但 Unicode 标准允许,Java 不支持 UTF-8 编码的 BOM流。

我可以通过发送没有 BOM 的文件来解决这个问题,但这并不可行,因为它会导致大多数插入 BOM 的 Microsoft 产品出现问题。

Sun/Oracle 拒绝使用 Streams 解决此问题有很多解决方法,但它们都要求您有权访问 Stream,JAXB2 提供的 Source Object 没有 InputStream 它只有一个 Reader 对象。有没有办法让我解决这个问题,或者通过使用知道如何忽略 UTF-8 编码中的 BOM 的阅读器包装 Sources Reader 对象,或者更改 JAXB2 将附件读取到源中的方式,以便它可以忽略UTF-8 编码的 BOM。

在此先感谢,克雷格

0 投票
1 回答
6824 浏览

rest - 是否可以使用 MTOM 来响应 CXF RESTful Web 服务

我正在为我的 Web 服务使用CXF 2.2.12库。

是否可以在RESTful响应中使用MTOM消息传输优化机制) ?

将不胜感激任何与此相关的文档/教程的链接。谢谢!

0 投票
1 回答
1174 浏览

web-services - 什么标准指定在 WSDL 中应如何指示 MTOM/XOP 支持?

我正在将 MTOM 附件支持添加到 Home Grown 应用服务器中的现有 Web 服务支持中。Web 服务框架遵循与 JavaEE5 类似的模式,带注释的服务和对象被自动公开为具有自动 WSDL 生成的 WebService。

我已经进行了实际的解析和生成,但我无法确定是否需要更新 WSDL 生成以向客户表明支持和首选 MTOM。我一直在为如何指示 MTOM 支持找到多个相互冲突的标准,而我对现实世界中使用的标准感到茫然。

到目前为止,我发现:

据我所见,W3c 似乎是 XMLSoap 的更高版本,但是它们似乎在不同的命名空间中使用了不同的元素来进行断言:

我还喜欢随机论坛帖子,它似乎表明 Glassfish 正在使用 XML Soap 之一。W3C 标准是一个草案,但似乎是 2007 年的草案。

有谁知道这些规格中的哪些通常在使用?或者在 MTOM 中忽略 WSDL 是否很常见?

0 投票
1 回答
1079 浏览

wcf - WCF 4 中的自定义 MTOM 绑定

由于 WPF 4 提供了开箱即用的默认配置,因此我很难尝试为我的服务创建自定义 MTOM 绑定。简而言之,我的 WCF 库托管了几个使用基本 HTTP 的服务。其中一项服务用于文件上传,需要 MTOM。我该怎么做才能让我的文件上传服务使用自定义定义的 MTOM 绑定,而其余的使用默认绑定?

这是我到目前为止所拥有的:

提前致谢!

0 投票
2 回答
3775 浏览

wcf - Powershell:使用 MTOM 消息编码使用 WCF 服务时出错

我目前正在探索powershell功能,但遇到了一个我无法解决的问题。任何快速提示将不胜感激 =)

我的目标:从 powershell v2.0(希望使用 new-webserviceproxy cmdlet)调用 WCF 服务(配置了 MTOM 消息编码)的方法

我的问题:当消息编码设置为 Mtom 时,new-webserviceproxy cmdlet 无法正确解析服务的响应。我收到以下错误:

电源

$proxyObject = New-WebServiceProxy -URI "http://myserver.com/AccessService.svc?wsdl"
$proxyObject.TestWebServiceConnection()

使用“0”参数调用“TestWebServiceConnection”的异常:“客户端发现响应内容类型为 'multipart/related; type="application/xop+xml";start="<http://tempuri.org/0> ";boundary="uuid:
4001d529-32b9-4560-9f4b-550c35c67b03+id=4";start-info="text/xml"',但预期为 'text/xml'。
请求失败并显示错误消息:
- -
--uuid:4001d529-32b9-4560-9f4b-550c35c67b03+id=4
Content-ID: <http://tempuri.org/0>
Content-Transfer-Encoding: 8bit
Content-Type: application/xop+xml; charset=utf-8;type="text/xml"
<s:信封 xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
< TestWebServiceConnectionResponse xmlns="http://myserver.com/">
<TestWebServiceConnectionResult>success</TestWebServiceConnectionResult>
</TestWebServiceConnectionResponse>
</s:Body>
</s:Envelope>
--uuid:4001d529-32b9-4560-9f4b-550c35c67b03+id=4--
--。”
行: 1 char:38
+ $proxyObject.TestWebServiceConnection <<<< () >> error.txt
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException

注意我可以通过其他客户端甚至微软提供的 wcfclient 工具来使用 WCF 服务。您可以看到TestWebServiceConnectionResult返回了success,但代理对象似乎无法解析响应。

行为

<serviceBehaviors>
<behavior name="MyServiceBehavior">
<serviceThrottling maxConcurrentCalls="100" maxConcurrentSessions="100"/>
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
</行为>
</服务行为>

绑定(我已经排除了超时值/阅读器配额和消息大小,因为它们的值的排列似乎与我的问题无关):


<basicHttpBinding>
<binding name="basicHttpEndpointBinding" messageEncoding="Mtom">
<security mode="None">
<transport clientCredentialType="None"/>
</security>
</basicHttpBinding>

服务

<service behaviorConfiguration="MyServiceBehavior" name="MyService.AccessService">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="basicHttpEndpointBinding" name="basicHttpEndpointAccessService" bindingNamespace="http://myserver.com/" contract= "MyService.IAccessService"/>
<endpoint address="mex" binding="basicHttpBinding" bindingConfiguration="basicHttpEndpointBinding" name="mexEndpointAccess" contract="IMetadataExchange"/>
</service>
0 投票
1 回答
1012 浏览

wcf - 使用 WP7 中的 basicHttpBinding 和 MTOM 编码来使用 WCF

是否可以将 basichttpbinding 与 Windows Phone 7 中的 MTOM messageEncoding 一起使用?我从来没有发现它是一个包含 WP7 可用绑定的清晰文档。谢谢,亚历克斯

0 投票
1 回答
1051 浏览

axis2 - MTOM、Axis2、WS-Security 和签名附件

我正在处理我们在其中一个 Web 服务中遇到的错误。我们使用的是在 OC4J 上运行的 Axis2 1.4.1。问题是,当使用 MTOM 向服务发送多个签名的二进制附件时,服务仅获取其中一个附件。如果我禁用 WS-Security 并向 Web 服务发送相同的请求,所有附件都会通过。这似乎只发生在 MTOM“确定”附件大到足以保证将它们分成单独的 MIME 部分时。如果它们非常小,那么 MTOM 只需对它们进行 base64 编码并将它们内联,所有数据都会通过。

所有请求 SOAP Xml 都正确生成。也就是说,所有多个附件都被发送到服务,并且所有 MIME 边界都存在,并且所有 XOP 包括都到位,因为我已经使用 Eclipses TCP/IP Monitor 以及 SOAP Sonar 中提供的输出窥探了请求.

在尝试将签名内容发送到 Axis2 Web 服务时,是否有其他人遇到过问题?

0 投票
1 回答
368 浏览

web-services - @MTOM 在上传/下载文件时如何确保文件完整性?

使用 JAX-WS @MTOM 传输文件时,它是否具有内置文件完整性检查?或者您必须在下载/上传完成后自行完成?

0 投票
3 回答
1666 浏览

wcf - WCF - 使用 Web 服务 (https/ssl/mtom/user/password) - 如何配置客户端?

我需要使用具有以下要求的 Web 服务:

  • https/ssl
  • MTOM
  • 需要在 SOAP 标头中指定用户/密码
  • 1 个(可能很大)二进制文件作为有效负载

我不控制此 Web 服务,需要使用它。由于我是 WCF 新手,我需要一些基本知识的帮助。我的问题是:

  1. 当我在 VS2010 中添加服务引用时,我在配置中得到了一个 basichttpbinding。我想我必须使用 wshttpbinding,对吗?我在哪里/如何更改/配置它?直接在配置中?
  2. 如何配置我的客户端以在soap标头中指定用户/密码?
  3. 如何“附加”二进制文件?

谢谢