创建WebService时遇到的问题

      今天在创建webService时遇到了一下问题:

      The service class "com.pera.spellcheck.SpellCheckSearcher" does not comply to one or more requirements of the JAX-RPC 1.1 specification, and may not deploy or function correctly.

原因:JAX-RPC1.1在处理SAOP与XML的映射时,不支持返回类型是List的类型。

解决:把List的返回类型改成数组的类型。如:List<UserBean>改成UserBean[].

背景:JAX-RPC 在javaEE1.5中已经被删除,已经不再用了,换成JAX-WS. JAX-RPC是JAVA API for XML Remote procedure client(基于可扩展标记语言XML的远程过程调用的Java应用程序接口).

JAX-WS(JAVA for XML Webservice)是JAX-RPC 的演进版本,两者最大的区别:JAX-RPC是RPC/encoded样式的wsdl,但JAX-WS不提供支持,其中JAX-WS大部分都是注解。

用axis1.4发布webservice选择style and use的问题

原因:axis1.4太旧,使用的JAX-RPC来处理SAOP与XML的映射,而JAX-RPC 只支持RPC/encoded样式,如果使用document/literal(wrapped)或document/literal 客户端就不能识别返回类型是对象的或List类型、数组类型的值。

解决:1.用JDK1.6以上或JDK1.6提供的webservice发布。2.axis2进行发布。3、axis1 要选择发布的样式为RPC/encodded.

猜你喜欢

转载自thd52java.iteye.com/blog/1975183
今日推荐