- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java Web Service之客户端实现
Java Web Service之客户端实现
Java Web Service的客户端实现有三种1. 生成的stub2. 动态代理3. 动态调用接口其中生 成stub是最常用的。stub是用JAX-RPC编译器根据WSDL文档生成的,其主要功能是将对endpoint接口的方法调用转化为SOAP 消息,并且负责将返回的SOAP响应转换为方法的返回值,把SOAP fault转化为方法的异常。JAX-RPC编译器产生的stub除了要实现endpoint接口外,还需要实现或继承 javax.xml.rpc.Stub接口或其实现的子类(Axis中是org.apache.axis.client.Stub)。 javax.xml.rpc.Stub接口主要定义了和网络通讯和认证相关的属性的设置和获取的机制。 Java Web Service的客户端实现有三种1. 生成的stub2. 动态代理3. 动态调用接口其 中生成stub是最常用的。stub是用JAX-RPC编译器根据WSDL文档生成的,其主要功能是将对endpoint接口的方法调用转化为SOAP 消息,并且负责将返回的SOAP响应转换为方法的返回值,把SOAP fault转化为方法的异常。JAX-RPC编译器产生的stub除了要实现endpoint接口外,还需要实现或继承 javax.xml.rpc.Stub接口或其实现的子类(Axis中是org.apache.axis.client.Stub)。 javax.xml.rpc.Stub接口主要定义了和网络通讯和认证相关的属性的设置和获取的机制。其代码如下:package javax.xml.rpc;import java.util.Iterator;public interface Stub {??? // Standard property: The Web services Internet address.??? public static String ENDPOINT_ADDRESS_PROPERTY;??? // Standard property: Password for authentication.??? public static String PASSWORD_PROPERTY;??? // Standard property: User name for authentication.??? public static String USERNAME_PROPERTY;??? // Standard property: Boolean flag for maintaining an HTTP session.??? public static String SESSION_MAINTAIN_PROPERTY;??? // Given a property name, get its value.??? public Object _getProperty(java.lang.String name);??? // Get the names of all the properties the stub supports.??? public Iterator _getPropertyNames();??? // Configure a property on the stub.??? public void _setProperty(java.lang.String name, java.lang.Object value);}JAX -RPC编译器产生还可以产生一个和WSDL中service元素对应的Service接口,该接口组合了多个port,也就是多个Stub。该接口继承 了javax.xml.rpc.Service。在J2EE环境中Service接口通常通过JNDI lookup得到。在J2EE中使用生成的stub的典型用例如下:代码:package com.jwsbook.jaxrpc;import javax.servlet.http.*;import javax.servlet.*;import javax.naming.InitialContext;public class BookQuoteServlet_1 extends javax.servlet.http.HttpServlet {? protected void doGet(HttpServletRequest req, HttpServletResponse resp)? throws ServletException,java.io.IOExce
文档评论(0)