我遇到了与 JAX-WS 和 AXIS 相关的问题。JAX-WS (2.1.7) 作为客户端,Axis (1.4.x) 作为服务器。
一切正常,但无法将响应读取到 Java。
回复:
<?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>
<ns1:myserviceResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://my/service">
<ns1:myserviceReturn xsi:type="xsd:string">responsestring</ns1:myserviceReturn>
</ns1:myserviceResponse>
</soapenv:Body>
</soapenv:Envelope>
问题在于,如果ns1:
从 中删除 -namespace 声明myserviceReturn
,则 JAX-WS 能够返回 null 以外的任何内容。
有没有人知道如何强制 JAX-WS 忽略名称空间,如何手动修改 SOAP 响应以排除“ns1”,或针对此类问题的其他想法?