jQuery闭包
2015-11-05 14:00
627 查看
1.下载以及官方文档
http://ws.apache.org/axis2
2.现有项目配置axis2
1)web.xml
2)相关文件拷贝
从官方下载war包,解压后,把/WEB-INF/lib,/WEB-INF/conf,/WEB-INF/modules复制到现有项目下
在现有项目下创建/WEB-INF/services/mydomain/META-INF/services.xml配置文件,内容例如:
3)service例子:
通过http://localhost:8080/mydomain/services/HelloWorldService?wsdl 访问,如果能显示wsdl信息则已配置成功
4)client测试
4.jsp客户端:
jsp与独立程序的区别在于ServiceClient 的构造方式
http://ws.apache.org/axis2
2.现有项目配置axis2
1)web.xml
<servlet> <display-name>Apache-Axis Servlet</display-name> <servlet-name>AxisServlet</servlet-name> <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping>
2)相关文件拷贝
从官方下载war包,解压后,把/WEB-INF/lib,/WEB-INF/conf,/WEB-INF/modules复制到现有项目下
在现有项目下创建/WEB-INF/services/mydomain/META-INF/services.xml配置文件,内容例如:
<serviceGroup> <service name="HelloWorldService"> <description>Hello World Service</description> <parameter name="ServiceClass" locked="false"> example.HelloWorldService </parameter> <operation name="hello"> <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver" /> </operation> </service> </serviceGroup>
3)service例子:
package example; import java.util.ArrayList; import java.util.List; import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; import org.apache.axiom.om.OMNamespace; /** * @author an_chuantong * @version created:Aug 30, 2008 6:15:14 PM * */ public class HelloWorldService { public HelloWorldService() { } public OMElement hello(OMElement in) { String name = in.getText(); System.out.println("name:" + name); System.out.println("in:" + in.getLocalName()); OMNamespace omN=in.getNamespace(); System.out.println("getNamespaceURI:" +omN.getNamespaceURI()); OMFactory fac = OMAbstractFactory.getOMFactory(); // OMNamespace指定此SOAP文档名称空间。 OMNamespace omNs = fac.createOMNamespace("http://helloworld.com/", "hw"); // 创建元素sayHello,并指定其在omNs指代的名称空间中。 OMElement resp = fac.createOMElement("helloResponse", omNs); // 指定元素的文本内容。 resp.setText("安安"+name); List list = new ArrayList(); list.add("act"); list.add("anc"); list.add("安安"); return resp; }
通过http://localhost:8080/mydomain/services/HelloWorldService?wsdl 访问,如果能显示wsdl信息则已配置成功
4)client测试
import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; import org.apache.axiom.om.OMNamespace; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.client.Options; import org.apache.axis2.client.ServiceClient; public class TestClient { // targetEPR指定打包的Service(.aar文件)在容器中的物理位置。 private static EndpointReference targetEPR = new EndpointReference("http://localhost:8080/mydomain/services/HelloWorldService?wsdl"); public static OMElement getSayHelloOMElement() { // 创建request SOAP包。 OMFactory fac = OMAbstractFactory.getOMFactory(); // OMNamespace指定此SOAP文档名称空间。 OMNamespace omNs = fac.createOMNamespace("http://helloworld.com/", "hw"); // 创建元素sayHello,并指定其在omNs指代的名称空间中。 OMElement method = fac.createOMElement("hello", omNs); // 指定元素的文本内容。 method.setText("ZJ"); return method; } public static void main(String[] args) { try { Options options = new Options(); options.setTo(targetEPR); ServiceClient sender = new ServiceClient(); sender.setOptions(options); OMElement sayHello = TestClient.getSayHelloOMElement(); // 发出request SOAP, // 同时将得到的远端由sayHello方法返回的信息保存到result。 // 通过services.xml能准确找到sayHello方法所在的文件。 OMElement result = sender.sendReceive(sayHello); System.out.println(result); if (result != null) { Iterator iterator = result.getChildElements(); while (iterator.hasNext()) { OMElement o = (OMElement) iterator.next(); System.out.println(o.getText()); } } } catch (Exception axisFault) { axisFault.printStackTrace(); } } }
4.jsp客户端:
jsp与独立程序的区别在于ServiceClient 的构造方式
import org.apache.axis2.Constants; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.client.Options; import org.apache.axis2.client.ServiceClient; import org.apache.axis2.context.ConfigurationContext; import org.apache.axis2.context.ConfigurationContextFactory; options.setTransportInProtocol(Constants.TRANSPORT_HTTP);//以http方式请求 ConfigurationContext configctx = ConfigurationContextFactory.createConfigurationContextFromFileSystem(null, null); ServiceClient sender = new ServiceClient(configctx, null);
相关文章推荐
- 通过Jquery判断页面元素是否在浏览器的可视区域内
- jquery日历插件
- 通过jQuery的attr修改onclick
- JQUERY修改背景图片
- jQuery源码分析之$.get/$.post/serialize/serializeArray方法详解
- jQuery EasyUI 表单插件 - Datebox 日期框
- 使用JQuery实现的分页插件分享
- 表单验证插件jquery.validate.js
- Jquery validationEngine使用的两种方式 客户端方重复提交
- jQuery-1.9.1源码分析系列(二)jQuery选择器续2——筛选
- jQuery EasyUI使用教程之在面板中创建复杂布局
- Jquery增加和移除属性操作
- jQuery中attr()和prop()在修改checked属性时的区别
- (转载)推荐几个非常实用的JQuery代码片段
- 锋利的jQuery书中推荐的几款插件
- jquery实现公告上下滚动显示
- jQuery:实现两个<select>控件的互移操作
- jquery-TreeTable
- 【jQuery】 ui effects
- 每个程序员都会的 35 个 jQuery 小技巧