此运行时环境是 WebSphere® Studio 的前发行版(版本 5.0 和更早版本)中支持的唯一 Web Service 运行时环境。此运行时环境支持 Apache SOAP 2.3。只应将它用于向后兼容性。
下面列示了将 IBM® SOAP 运行时环境与 Web Service 一起使用时的局限性。有关局限性的完整列表,请参阅局限性。
SOAP 服务 http://tempuri.org/webservice.AddressBook 中发生部署错误:类名 java.lang.String[] 未能解析:java.lang.String[]
因此,不能定制服务端上 Java 数组的序列化器的映射。部分变通方法是对于定制映射,使序列化器类字段保持空白。这将消除将数组类名生成到部署描述符中,从而使服务能够起作用。注意,反序列化器类以及定制反序列化器的映射不受此问题和变通方法的影响。
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:x="" qname="x:some-name" xml2JavaClassName="some-serializer"/>
XML 编辑器可能会标记以下错误:
属性“xmlns:x”的值无效。具有前缀的名称空间绑定不能是空的。
此错误对于 WebSphere Application Server V4 是无害的。然而,不要尝试将此 dds.xml 部署到使用 Xerces 2.x (XML4J 4.x) 或更高版本(例如,WebSphere Application Server V5)的其它服务器。否则,在服务器装入 dds.xml 文件时将会产生类似的 Xerces 解析错误。应通过完成 Web Service 方案并选择正确的服务器类型来重新生成 dds.xml。这将为该服务器类型生成正确的 dds.xml。
另外,当尝试从该 ISD 文件部署 Web Service 时也会产生类似的 Xerces 解析错误。变通方法是手工将该文件编辑为以下格式:
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" qname="some-name" xml2JavaClassName="some-serializer"/>