xfire配置webService的方法步骤
来源:互联网 发布:继承在编程方面翻译为 编辑:程序博客网 时间:2024/05/16 01:16
第一步:建一个secn的services.xml文件 META-INF > xfire > services.xml <?xml version="1.0"?> <beans xmlns="http://xfire.codehaus.org/config/1.0"> <!-- 这个是xfirer的配置文件 --> <service> <!-- 这个是xfire的名字 --> <name>HelloWorldService</name> <!-- 这个是名字空间 --> <namespace>urn:helloworld:service:xfire:itcast:cn</namespace> <!-- 这个是接口 --> <serviceClass>cn.itcast.xfire.service.HelloWorld</serviceClass> <!-- 这个是实现类 --> <implementationClass>cn.itcast.xfire.service.HelloWorldService</implementationClass> </service> </beans> 第二步:建一个web.xml文件 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>XFireServlet</servlet-name> <display-name>XFire Servlet</display-name> <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> <!-- 通过初始化参数改变xfire配置文件的位置 ;如果改改了.那么services.xml就要和web.xml在一起--> <!-- <init-param> <param-name>config</param-name> <param-value>services.xml</param-value> </init-param> --> </servlet> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/servlet/XFireServlet/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>XFireServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping> </web-app> 测试方法一: @Test public void testXfire1() throws Exception{ Service service = new Service(); Call call = (Call) service.createCall(); String url = "http://localhost:8080/secn/services/HelloWorldService" ; call.setTargetEndpointAddress(new URL(url)); call.setOperationName("sayHello"); System.out.println(call.invoke(new Object[]{"tom"})); } 测试方法二:这个url地址一定要加上?wsdl并在 new Object[]{"tom"})[0]这里要加上[0] @Test public void testXfire2() throws Exception{ String url = "http://localhost:8080/secn/services/HelloWorldService?wsdl" ; Client c = new Client(new URL(url)); System.out.println(c.invoke("sayHello", new Object[]{"tom"})[0]); } 测试方法三: @Test public void testXfire3() throws Exception{ String url = "http://localhost:8080/secn/services/HelloWorldService" ; ObjectServiceFactory serviceFactory = new ObjectServiceFactory(); org.codehaus.xfire.service.Service serviceModel = serviceFactory.create(IHelloWorld.class); XFireProxyFactory proxyFactory = new XFireProxyFactory(); IHelloWorld hw = (IHelloWorld)proxyFactory.create(serviceModel,url); System.out.println(hw.sayHello("Tome")); } 第三步: <!-- jsr181的配置,是对于用注释方式生成webService --> <service> <serviceClass>cn.com.secn.xfire.service.jsr181.CustomerService</serviceClass> <!-- serviceFactory>jsr181</serviceFactory --> <!-- 这里用的是#号引用下面的Bean --> <serviceFactory>#jsr181ServiceFactory</serviceFactory> </service> <bean id="config" class="org.codehaus.xfire.aegis.type.Configuration"> <property name="defaultExtensibleElements" value="false" /> <property name="defaultExtensibleAttributes" value="false" /> <property name="defaultNillable" value="false" /> <property name="defaultMinOccurs" value="1" /> </bean> <bean name="jsr181ServiceFactory" class="org.codehaus.xfire.annotations.AnnotationServiceFactory"> <constructor-arg ref="xfire.transportManager" index="0" /> <constructor-arg ref="config" index="1" type="org.codehaus.xfire.aegis.type.Configuration" /> </bean> CostomerService类: //在这里也可以添服务名 @WebService public class CustomerService { private List<Customer> customers = new ArrayList<Customer>(); public CustomerService() { } //header = true是以头部发送方式 @WebMethod @WebResult(name = "Customers") //返回类型 public Collection<Customer> getCustomers( @WebParam(name = "UserToken", header = true) UserToken auth) { authorize(auth); return customers; } private void authorize(UserToken auth) { System.out.println(auth.getUsername()); System.out.println(auth.getPassword()); } @WebMethod public String addCustomer(@WebParam(name = "UserToken", header = true) UserToken auth, @WebParam(name = "customer") Customer customer) { authorize(auth); customers.add(customer); return "tommm"; } }
0 0
- xfire配置webService的方法步骤
- XFire webService客户端创建步骤
- xfire+spring webservice 配置
- 配置xfire.webservice
- XFire的webservice应用
- xfire+webservice(服务器配置篇)
- 使用XFire发布webservice配置
- xfire调用webService接口方法
- xfire构建webservice项目步骤以及使用
- 在java中使用xfire实现webservice的配置
- Xfire在Spring下实现安全的WebService详述---配置
- Myeclipse6.5下使用XFire开发WebService的简单例子(最详细的步骤)
- 基于xFire的webService例子
- 使用XFire开发及调用WebService的步骤 web services readme
- 简单搭建xfire开源软件的webservice开发及其步骤
- Xfire发布webservice无配置demo
- 手把手教你spring+xfire配置webservice
- xfire+spring配置webservice实例讲解
- opencv实现图像分割,分离前景和背景(1)
- java 的DBHelper类型
- 创建Access数据的ODBC数据源时没有Access数据源驱动器
- junit4单元测试报错解决
- IOS UITabBar-持续更新
- xfire配置webService的方法步骤
- 欧拉回路、欧拉路径
- VS2008中定位代码前一个大括号的方法
- 微商快速有效获得精准粉丝的技巧分析
- Kafka学习之producer配置(0.8.1版)
- Android学习中关于SQLite的一个小Demo(数据库的创建、数据的增删查改)
- 搭建Qt 5.3.1 for Windows Phone 8开发环境
- 游戏中不能使用点卡
- XmlDocument.LoadXml上的坑