下列映射属性只适用于使用 IBM® SOAP 运行时环境的 Web Service。
属性 | 描述 |
---|---|
编码样式 | 通过 SOAP 协议序列化数据的规则。文字 XML(http://xml.apache.org/xml-soap/literalxml)基于 XML 模式实例。SOAP 编码(http://schemas.xmlsoap.org/soap/ encoding/)基于一个简单类型系统,该系统是在编程语言、数据库和半结构化数据中的类型系统中公共功能部件的概括。编码定义应用程序中定义的数据值如何能转换为协议格式或从协议格式转换为数据值。要了解有关 SOAP 编码的更多信息,请参阅 www.w3.org/TR/SOAP |
XML 类型名称空间 | 用作 XML 文档中的前缀以便唯一地标识组织和避免元素名称冲突。 |
XML 类型名称 | 在 XSD 中定义的复杂类型或简单类型的名称。 |
bean 类 | 封装数据集合和对数据进行操作的方法的 Java 类的标准名称。 |
序列化器类(仅适用 SOAP) | 在运行时,根据编码样式将 bean 类的实例转换为 XML 类型的实例。实现 org.apache.soap.util.xml.Serializer 接口的类的标准名称。 |
反序列化器类(仅适用于 SOAP) | 在运行时,将给定编码样式的 XML 类型的实例转换为 bean 类的实例。实现 org.apache.soap.util.xml.Deserializer 接口的类的标准名称。 |
Marshaller 方法(仅适用于 HTTP) | 在运行时,将 bean 类的实例转换为字符串以通过 HTTP 进行传输。 |
Unmarshaller 方法(仅适用于 HTTP) | 在运行时,将通过 HTTP 接收的字符串的实例转换为 bean 类的实例。 |
映射指定 XML Qname、Java 类名、编码样式以及序列化器和反序列化器(用来在类的实例与 XML Qname 的编码实例之间进行转换)之间的关联。这两种映射方向称为“Java 至 XML”和“XML 至 Java”。
SOAP V2.3 运行时环境都保存有这样的映射条目的一个表,称为 SOAPMappingRegistry。
在类型映射注册表中,单个 Java 类型最多可以映射至一种 XSD 类型,而单个 XSD 类型最多可以映射至一种 Java 类型。缺省情况下,大多数标准 Java 类型以及 Java bean 都是受支持的。
“从 Java 至 WSDL XSD(2001)的映射”表为 SOAP 和文字 XML 编码样式显示从 Java 数据类型至 WSDL 部件类型的缺省映射,如 WSDL SOAP 绑定所定义的那样。该表还显示配置到 SOAP 运行时环境中以执行 Java 与 XML 之间的实际转换的序列化器和反序列化器。未列示在此表中的 Java 类型和编码样式的组合缺省为“定制”映射。
Java 类型 | 编码样式 | XML 类型名称空间 注 1 | XML 类型名称 | 序列化器 | 反序列化器 | 映射样式 | 注释 |
---|---|---|---|---|---|---|---|
boolean, java.lang.Boolean | SOAP | xsd | boolean | - | - | Bean | |
byte, java.lang.Byte | SOAP | xsd | byte | - | - | Bean | |
short, java.lang.Short | SOAP | xsd | short | - | - | Bean | |
int, java.lang.Integer | SOAP | xsd | int | - | - | Bean | |
long, java.lang.Long | SOAP | xsd | long | - | - | Bean | |
float, java.lang.Float | SOAP | xsd | float | - | - | Bean | |
double, java.lang.Double | SOAP | xsd | double | - | - | Bean | |
java.lang.String | SOAP | xsd | string | - | - | Bean | |
java.math.BigDecimal | SOAP | xsd | decimal | - | - | Bean | |
java.util.GregorianCalendar | SOAP | xsd | date | - | - | Bean | |
java.util.Date | SOAP | xsd | dateTime | - | - | Bean | |
java.util.Vector | SOAP | xml-soap 注 2 注 20 | Vector | - | - | Bean | |
java.util.Map | SOAP | xml-soap 注 2 注 20 | Map | - | - | Bean | |
java.util.Hashtable | SOAP | xml-soap 注 2 注 20 | Map | - | - | Bean | |
byte[] | SOAP | soap-enc 注 3 | base64 | - | - | Bean | |
T[](某类型的数组 T) | SOAP | soap-enc 注 3 | Array 注 4 | - | - | Bean | 假定 T 既不是 byte 也不是 org.w3c.dom.Element。 |
org.w3c.dom.Element。 | 文字 XML | 注 5 | 注 6 | 不适用 | 不适用 | Element | |
Java Bean | SOAP | 注 5 | 注 7 | BeanSerializer | BeanSerializer | Bean | 序列化器/反序列化器限定类名是 org.apache.soap. encoding.soapenc. BeanSerializer。 |
“从 WSDL XSD 至 Java(SOAP 绑定)的映射”表为 SOAP 和文字 XML 编码样式描述从 WSDL 部件类型至 Java 数据类型的缺省映射,如 WSDL SOAP 绑定所定义的那样。该表还显示配置到 SOAP 运行时环境中以执行 Java 与 XML 之间的实际转换的序列化器和反序列化器。未列示在此表中的 WSDL 部件类型和编码样式的组合缺省为“定制”映射。
XML 类型名称空间 注 1 | XML 类型名称 | 编码样式 | Java 类 | 序列化器类 | 反序列化器类 | 映射样式 | 注释 |
---|---|---|---|---|---|---|---|
xsd | boolean | SOAP | boolean, java.lang.Boolean 注 22 | - | - | Bean | |
xsd | byte | SOAP | byte, java.lang.Byte 注 22 | - | - | Bean | |
xsd | short | SOAP | short, java.lang.Short 注 22 | - | - | Bean | |
xsd | int | SOAP | int, java.lang.Integer 注 22 | - | - | Bean | |
xsd | long | SOAP | long, java.lang.Long 注 22 | - | - | Bean | |
xsd | float | SOAP | float, java.lang.Float 注 22 | - | - | Bean | |
xsd | double | SOAP | double, java.lang.Double 注 22 | - | - | Bean | |
xsd | string | SOAP | string | - | - | Bean | |
xsd | decimal | SOAP | java.math.BigDecimal | - | - | Bean | |
xsd | date | SOAP | java.util.GregorianCalendar | - | - | Bean | |
xsd | dateTime 注 10 | SOAP | java.util.Date | - | - | Bean | |
xml-soap 注 2 | Vector | SOAP | java.util.Vector | - | - | Bean | |
xml-soap 注 2 | Map | SOAP | java.util.Map 注 21 | - | - | Bean | |
soap-enc 注 3 | base64 | SOAP | byte[] | - | - | Bean | |
soap-enc 注 3 | Array | SOAP | T[] 注 4 | - | - | Bean | T 是来自 wsdl:arrayType 的映射 注 4 |
some-namespace 注 12 | some-complex-type(在 XSD 2001 中)注 12 | SOAP | 注 14 | BeanSerializer | BeanSerializer | Bean | 序列化器/反序列化器限定类名是 com.ibm.etools. webservice.runtime. XSDAnyTypeSerializer BeanSerializer. |
some-namespace 注 12 | some-complex-type(在 XSD 2001 中)注 12 | 文字 XML | 注 14 | 不适用 | 不适用 | Bean | 转换是在生成的代理或框架中处理的,而不是在 SOAP 运行时环境中通过 SOAP 序列化器或反序列化器处理的。 |
some-namespace 注 12 | some-complex-type(在 XSD 2001 中)注 12 | 文字 XML | org.w3c.dom.Element 注 15 | 不适用 | 不适用 | Element | |
some-namespace 注 13 | some-type 注 13 | 文字 XML | org.w3c.dom.Element 注 16 | 不适用 | 不适用 | Element | |
xsd | anyType 注 11 | 文字 XML | org.w3c.dom.Element。 | 不适用 | 不适用 | Element | |
xsd | base64Binary | SOAP | byte[] | - | - | Bean | |
xsd | hexbinary | SOAP | byte[] | - | - | Bean | |
xml soap | Element | 文字 XML | org.w3c.dom.Element。 | - | - | Element |
“从 WSDL XSD 至 Java(HTTP 绑定)的映射”表描述了对应于 HTTP GET 和 POST 绑定的从 WSDL 部件类型至 Java 数据类型的缺省映射。未列示在此表中的 WSDL 部件类型和编码样式的组合缺省为“定制”映射并且要求用户提供 marshaller 和 unmarshaller 方法。
XML 类型名称空间 注 1 | XML 类型名称 | MIME 类型 | Java 类 | 映射样式 |
---|---|---|---|---|
xsd | boolean | text/plain text/xml mimeXml | boolean | Bean |
xsd | byte | text/plain text/xml mimeXml | byte | Bean |
xsd | short | text/plain text/xml mimeXml | short | Bean |
xsd | int | text/plain text/xml mimeXml | int | Bean |
xsd | long | text/plain text/xml mimeXml | long | Bean |
xsd | float | text/plain text/xml mimeXml | float | Bean |
xsd | double | text/plain text/xml mimeXml | double | Bean |
xsd | string | text/plain text/xml mimeXml | string | Bean |
xsd | decimal | text/plain text/xml mimeXml | java.math.BigDecimal | Bean |
xsd | date | text/plain text/xml mimeXml | java.util.GregorianCalendar | Bean |
xsd | dateTime 注 10 | mimeXml text/plain text/xml | java.util.Date | Bean |
some-namespace 注 12 | some-complex-type(在 XSD 2001 中)注 12 | mimeXml | 注 14 | Bean |
some-namespace 注 12 | some-complex-type(在 XSD 2001 中)注 12 | mimeXml | org.w3c.dom.Element 注 17 | Element |
some-namespace 注 12 | some-complex-type(在 XSD 2001 中)注 12 | text/xml | org.w3c.dom.Element 注 18 | Element |
some-namespace 注 13 | some-type 注 13 | mimeXml text/xml | org.w3c.dom.Element 注 19 | Element |
xsd | anyType 注 11 | mimeXml text/xml | org.w3c.dom.Element。 | Element |