JAX WS 生成的客户端从新的 Axis2 版本中获取 "Unable to determine SOAP version"
JAX WS generated client gets "Unable to determine SOAP version" from new Axis2 versions
我们在 Axis2-server 上有 SOAP Web 服务 运行。在客户端,我们使用 JAX WS 生成的客户端。我们尝试将我们的 Axis2 服务器从 1.6.2 升级到 1.7.7,发现 JAX WS 客户端不再工作。来自 Axis2 服务器的服务器 returns "Unable to determine SOAP version"。我搜索到 "Unable to determine SOAP version" 错误来自 axiom 库,它从 SOAP 消息的 Content-Type 中读取类型参数。
SOAP 请求示例 headers:
Accept: application/soap+xml, multipart/related
Content-Type: multipart/related;start="<rootpart*897f69f7-8c00-461b-a0c3-08d07ea4e433@example.jaxws.sun.com>";type="application/xop+xml";boundary="uuid:897f69f7-8c00-461b-a0c3-08d07ea4e433";start-info="application/soap+xml;action=\"Authenticate\""
User-Agent: JAX-WS RI 2.2.9-b130926.1035 svn-revision#5f6196f2b90e9460065a4c2f4e30e065b245e51e
--uuid:897f69f7-8c00-461b-a0c3-08d07ea4e433
Content-Id: <rootpart*897f69f7-8c00-461b-a0c3-08d07ea4e433@example.jaxws.sun.com>
Content-Type: application/xop+xml;charset=utf-8;type="application/soap+xml;action=\"Authenticate\""
Content-Transfer-Encoding: binary
这实际上是 Apache Axiom 中的一个错误;参见 AXIOM-492。
我们在 Axis2-server 上有 SOAP Web 服务 运行。在客户端,我们使用 JAX WS 生成的客户端。我们尝试将我们的 Axis2 服务器从 1.6.2 升级到 1.7.7,发现 JAX WS 客户端不再工作。来自 Axis2 服务器的服务器 returns "Unable to determine SOAP version"。我搜索到 "Unable to determine SOAP version" 错误来自 axiom 库,它从 SOAP 消息的 Content-Type 中读取类型参数。
SOAP 请求示例 headers:
Accept: application/soap+xml, multipart/related
Content-Type: multipart/related;start="<rootpart*897f69f7-8c00-461b-a0c3-08d07ea4e433@example.jaxws.sun.com>";type="application/xop+xml";boundary="uuid:897f69f7-8c00-461b-a0c3-08d07ea4e433";start-info="application/soap+xml;action=\"Authenticate\""
User-Agent: JAX-WS RI 2.2.9-b130926.1035 svn-revision#5f6196f2b90e9460065a4c2f4e30e065b245e51e
--uuid:897f69f7-8c00-461b-a0c3-08d07ea4e433
Content-Id: <rootpart*897f69f7-8c00-461b-a0c3-08d07ea4e433@example.jaxws.sun.com>
Content-Type: application/xop+xml;charset=utf-8;type="application/soap+xml;action=\"Authenticate\""
Content-Transfer-Encoding: binary
这实际上是 Apache Axiom 中的一个错误;参见 AXIOM-492。