xfire开发webservice服务接口简洁博客
一、新建一个maven工程导入依赖
<dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.codehaus.xfire</groupId> <artifactId>xfire-all</artifactId> <version>1.2.6</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.0.0.RELEASE</version> </dependency> </dependencies>
二、配置web.xml
spring配置和xfire配置
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>ws</display-name> <!-- spring配置 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring*.xml</param-value> </context-param> <!-- xfire配置 --> <servlet> <servlet-name>xfire</servlet-name> <servlet-class> org.codehaus.xfire.spring.XFireSpringServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>xfire</servlet-name> <url-pattern>/ws/service/*</url-pattern> </servlet-mapping> </web-app>
三、helloword 接口和实现
public interface HelloWorldService { public String say(String word); }
public class HelloWordServiceImpl implements HelloWorldService{ public String say(String word){ return "hello:"+word; } }
四、配置spring配置文件为外提供接口服务
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- 引入JAR中XFire默认配置信息 --> <import resource="classpath:org/codehaus/xfire/spring/xfire.xml" /> <!-- 使用XFire接口导出器 --> <bean id="baseWebService" class="org.codehaus.xfire.spring.remoting.XFireExporter" lazy-init="false" abstract="true"> <property name="serviceFactory" ref="xfire.serviceFactory" /> <property name="xfire" ref="xfire" /> </bean> <!--第一步, 开发关注业务服务类 --> <bean id="helloSI" class="org.jxx.ws.server.HelloWordServiceImpl"> </bean> <!--第二步,实现websvice,暴露接口--> <bean id="helloWorldService" parent="baseWebService"> <!-- 业务服务bean --> <property name="serviceBean" ref="helloSI" /> <!-- 爆率业务服务接口类--> <property name="serviceClass" value="org.jxx.ws.server.HelloWorldService" /> </bean> </beans> 五、测试类
public class ClientTest { public static void main(String[] args) throws MalformedURLException, Exception { //第一种方式 String serviceUrl1 ="http://localhost:803/ws/ws/service/HelloWorldService?wsdl"; Client client = new Client(new URL(serviceUrl1)); Object[] results = client.invoke("say", new Object[]{"hello11111111"}); System.out.println(results[0]); //第二种方式 //客户端可以自行建立一个同名interface.参考 WSDL 建立interface方法和参数 String serviceurl2 ="http://localhost:803/ws/ws/service/HelloWorldService"; Service service = new ObjectServiceFactory().create(HelloWorldService.class) ; XFireProxyFactory factory = new XFireProxyFactory() ; HelloWorldService helloService = (HelloWorldService) factory.create(service,serviceurl2) ; System.out.println(helloService.say("hello22222222")); } }
相关推荐
XFire Java SOAP框架概述 MyEclipse Web Services是建立在XFire Java ... XFire支持 Web Services standards,Spring 整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP, In-memory传输协议
里面包括了3个PDF文档 1:Xfire-野猪书-开发指南 2:xfiretutorial 3:xfire-spring 为你的工程提供一个更好的远程服务,做好数据交换第一步 XFire是当前J2EE领域非常流行的Web Service框架,以其卓越的...
MyEclipse Web Services是建立在XFire Java SOAP框架和工具基础上的, ... XFire支持 Web Services standards,Spring 整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP, In-memory传输协议
1 支持一系列Web Service的新标准--JSR181、WSDL2.0 、JAXB2、WS-...6 高性能的SOAP 栈设计; 7 支持Spring、Pico、Plexus、Loom等容器。 8 XFire比Axis1.3快2-6倍; 9 XFire的响应时间是Axis1.3的1/2到1/5。
5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP...
xfire-spring-1.2.2.jar xfire-xmlbeans-1.2.2.jar 支持将Web服务绑定到POJO、XMLBeans、JAXB1.1、JAXB2.0和Castor; 支持基于HTTP、JMS、XMPP等多种协议访问Web服务; 支持多种Web服务业界重要标准如SOAP、WSDL、...
XFire是完全基于流数据处理进行工作的系统,这意味着XFire不是将整个SOAP文档缓存在内存中,而是以管道的方式接收SOAP流数据。这种工作方式的转变带来了可观的性能回报,同时节省了内存的占用。 XFire从管道中接收...
invalid SOAP request: 当在浏览其中报此错误的时候,实际上是因为WebService针对的是客户端请求,而不是浏览器的访问. 只要建立了测试类,在测试类中访问就可以了. applicationContext.xml 一直是放置在WEB-INF目录...
MyEclipse Web Services是建立在XFire Java SOAP框架和工具基础上的, ... XFire支持 Web Services standards,Spring 整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP, In-memory传输协议.
Spring Web Service是Spring社区基于Spring提供的一个关注于创建”文档驱动”的Web Service的模块, 它的主要目标是方便基于”契约优先”(Contract-First)的SOAP服务的开发. 好像没有多少人讨论, 大多数的话题都是...
最近项目中遇到需要去掉老系统的webservice服务中的insert方法,找了很久,发现这样最简单,实测有效!!!
5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 5.4.2.1. 注册用户自定义的PropertyEditor ...
xfire 的学习笔记,包括如何生成webservice客户端代码,如何集成spring框架以及常见异常的处理
Spring Framework 开发参考手册 Rod Johnson Juergen Hoeller Alef Arendsen Colin Sampaleanu Rob Harrop Thomas Risberg Darren Davison Dmitriy Kopylenko Mark Pollack Thierry Templier Erwin ...
5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP...
5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 6. 使用Spring进行面向切面编程(AOP...
这些 Services 可以支持多种协议,比如:SOAP、XML/HTTP、RESTful HTTP 或者 CORBA ,并且可以在多种传输协议上运行,比如:HTTP、JMS 或者 JBI,CXF 大大简化了 Services 的创建,同时它继承了 XFire 传统,一样...
这些 Services 可以支持多种协议,比如:SOAP、XML/HTTP、RESTful HTTP 或者 CORBA ,并且可以在多种传输协议上运行,比如:HTTP、JMS 或者 JBI,CXF 大大简化了 Services 的创建,同时它继承了 XFire 传统,一样...
这些 Services 可以支持多种协议,比如:SOAP、XML/HTTP、RESTful HTTP 或者 CORBA ,并且可以在多种传输协议上运行,比如:HTTP、JMS 或者 JBI,CXF 大大简化了 Services 的创建,同时它继承了 XFire 传统,一样...