为什么要映射?
由于Web服务调用是通过XML进行数据交换的远程方法调用,它不像本地调用可以通过引用
传递参数,JAX-RPC目前的版本只支持按值传递参数。也就是说,当要通过远程方法调用Web服
务时,把参数的一个拷贝传递过去。默认情况下,非静态的和非transient的变量才会拷贝。
当从Web服务端返回调用结果时,又产生一个新的对象。
鉴于Web服务以上的调用机制,所以在参数传递时有一定的限制,它只支持以下的数据类型:
原始类型(任何Java支持的数据类型,如int);
标准java类(String等);
由支持的Java类型组成的数组(Array);
异常类;
JAX-RPC值类型。
*******************************************************************
注意:只有JAX-RPC支持的数据类型才能在Web服务中作为参数传递和返回。*
*******************************************************************
我们知道,SOAP、WSDL是和编程语言无关的Web服务协议,故SOAP、WSDL并不定义XML和编程
语言之间的映射。JAX-RPC1.1规范定义了以下JAVA到XML之间的映射关系:
简单的内置(built-in)类型的映射(如:xsd:string--java.lang.String);
数组(Array,如int[] ,String[][]等),映射到 Java array;
简单的内置(built-in)类型的枚举(Enumeration), 映射到 Java Enumeration;
XML Struct 和复杂类型,映射到JavaBean,这个Bean有相关的 getter 和 setter方法。
--
FROM 202.120.224.*