- 浏览: 1974086 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (509)
- JavaEE (122)
- Oracle数据库 (29)
- JavaScript (37)
- SAP (5)
- MySql数据库 (7)
- JavaSE (4)
- Ajax (1)
- jQuery (13)
- SSH框架 (36)
- Web Service (10)
- JSF框架 (2)
- JBPM (0)
- ireport报表 (2)
- ibatis (5)
- Hibernate (31)
- JSP (11)
- Tomcat 服务器 (20)
- Other (19)
- JavaWeb (4)
- Maven (11)
- OSWorkFlow (10)
- HTML (13)
- Exception汇总 (7)
- SVN (2)
- 笑话 (1)
- JSTL (1)
- WebSphere Message Broker (13)
- ANT命令 (3)
- Liunx (12)
- Struts2 (26)
- Eclipse (6)
- DOS (3)
- Flex (11)
- WebSphere (1)
- 开发常用工具 (3)
- Junit (2)
- EJB (4)
- Struts1.2 (2)
- Jboss (1)
- Android (2)
- Java框架源码解析 (1)
- Spring (4)
- MyBatis (6)
- SpringMVC (4)
- Jetty (2)
- 数据库表设计 (1)
- SSO (4)
最新评论
-
贝塔ZQ:
也可以试试PageOffice插件,觉得更简单点
Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度 -
jia1208:
...
Could not publish server configuration for Tomcat v6.0 Server at localhost. -
u011274527:
赞
java.io.EOFException java.io.ObjectInputStream$PeekInputStream.readFully 错误 -
旭旭小牛啦:
怎么没哟了,继续赛
jQuery 选择器 -
wzw3919:
100行会报空指针
Java 解压缩zip文件
我把这个创建的步骤和代码的贴出来,.
首先新建一个工程,取名就随便点啦..MyWebService,然后复制jar包到lib目录下, 创建包,建立接口..写一个javaBean的类,
以下是一个简单的不能再简单的接口了,
package pack.java.xfire.demo; import java.util.List; /** * @author Administrator * 服务端接口; */ public interface IPerson { public abstract List<Person> getPersonList(); public abstract List<Person> setPersonList(List<Person> personList); public abstract Person getPersonObj(); }
接下来就是实现这个接口:
package pack.java.xfire.demo; import java.io.Serializable; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * Service 端,实现类; * @author Administrator * */ public class PersonImpl implements IPerson,Serializable{ private static final long serialVersionUID = -9034712983379559694L; public List<Person> getPersonList(){ List<Person> list=new ArrayList<Person>(); Person person=new Person(); person.setAge(22); person.setName("Zhou"); person.setSex("Boy"); list.add(person); Person person2=new Person(); person2.setAge(19); person2.setName("Peng"); person2.setSex("Girl"); list.add(person2); return list; } public Person getPersonObj(){ Person person=new Person(); person.setAge(22); person.setName("ZengPing"); person.setSex("Girl"); Map<Integer, String> map=new HashMap<Integer, String>(); map.put(1, "HuFang"); map.put(2, "DuanYouYu"); map.put(3, "TianWei"); List<String> list=new ArrayList<String>(); list.add("List1"); list.add("List2"); list.add("List3"); person.setList(list); person.setMap(map); return person; } public List<Person> setPersonList(List<Person> personList){ return personList; } }
之后,在你的工程的src目录下建立,META-INF/xfire/services.xml文件,其内容如下:
<?xml version="1.0" encoding = "utf-8" ?> <beans xmlns="http://xfire.codehaus.org/config/1.0"> <service> <name>PersonService</name> <namespace>http://simple.java.xifire/IPerson</namespace> <serviceClass>pack.java.xfire.demo.IPerson</serviceClass> <implementationClass>pack.java.xfire.demo.PersonImpl</implementationClass> <scope>request</scope> </service> </beans>
在启动web 服务器, 在浏览器中输入:
http://localhost:8080/XFireServices/services/
之后就能看到
Available Services:
- PersonService [wsdl]<!--Just filling space according to http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807--><!--Just filling space according to http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807-->
点击进去之后,自动产生的一个对应的一些xml配置文件..
配置客户端:
1.建立客户端工程, 拷贝jar包到lib目录下, 然后建立包 和 接口,JavaBean等等, 这里说明一点:
客户端建立的包和接口一样要和服务器端的接口和类一摸一样,还有服务器端的javaBean必须实现Serializable,才能够传输.
否则会找不到,对应的文件, 从服务器返回过来的数据会为null;
在写一个测试类,用来测试服务器的返回的数据,
package pack.java.xfire.demo; import java.net.MalformedURLException; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Map; import org.codehaus.xfire.client.XFireProxyFactory; import org.codehaus.xfire.service.Service; import org.codehaus.xfire.service.binding.ObjectServiceFactory; /** * Client 测试端; * @author Administrator * */ public class ClientDemo { /** * 主方法; * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String url="http://PC2009120421osa:8080/XFireServices/services/PersonService"; Service serviceModel=new ObjectServiceFactory().create(IPerson.class); try { IPerson person=(IPerson) new XFireProxyFactory().create(serviceModel, url); List<Person> list=person.getPersonList(); //输出Person list集合; for(Person per:list){ System.out.println(per.getName()+","+per.getAge()+","+per.getSex()); } List<Person> list2=new ArrayList<Person>(); Person person2=new Person(); person2.setAge(11); person2.setName("Test"); person2.setSex("Girl"); list2.add(person2); //设置Person list集合; List<Person> personList2=person.setPersonList(list2); //输出从服务器端返回的集合数据; for (Person per : personList2) { System.out.println("\n"+per.getName()+","+per.getAge()+","+per.getSex()); } //调用服务器端的单个对象; Person person3 =person.getPersonObj(); System.out.println("\n"+person3.getName()+","+person3.getAge()+","+person3.getSex()); Map<Integer,String> map=person3.getMap(); System.out.println("\n服务器端返回的List集合"); List<String> list3=person3.getList(); for (String str : list3) { System.out.println(str); } System.out.println("\n服务器端返回的Map集合"); for(Iterator<Integer> iterator=map.keySet().iterator();iterator.hasNext();){ int resultKey=iterator.next(); String resultValue=map.get(resultKey); System.out.println(resultKey+","+resultValue); } } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
控制台输出的结果如下:代表成功..
-----------------------------------------------------------------------
Zhou,22,Boy
Peng,19,Girl
Test,11,Girl
ZengPing,22,Girl
服务器端返回的List集合
List1
List2
List3
服务器端返回的Map集合
评论
5 楼
wusuobuai
2013-10-17
学习了 长见识
4 楼
fristflaytwo
2011-08-25
为什么我的在bean中实现了序列化包名也改过了可是就是在客户端他的值是null,晕了!!!
3 楼
fristflaytwo
2011-08-25
2 楼
zhou363667565
2010-12-16
有时间,再帮你写一个完整的实例出来.
1 楼
beilejiang
2010-12-08
顶下!最近在看webservice!能给个完整的ssh+xfire的例子么?QQ:403274410。
发表评论
-
org.apache.cxf.interceptor.Fault: Unexpected wrapper element {xxx}
2015-08-02 22:36 8518搭建了一个SpringMVC + Mybatis +Tile ... -
大型互联网服务集成平台:springmvc+mybatis+restful+webservice+quartz+bootstrap html5
2015-04-13 21:49 81SpringMVC + Mybatis + SpringSe ... -
大型互联网服务集成平台:springmvc+mybatis+restfull+JMS+webservice+bootstrap
2015-04-12 23:33 83SpringMVC + Mybatis + SpringS ... -
Maven构建大型互联网架构springmvc+mybatis+Restfull+Webservice+Bootstrap
2015-04-12 23:28 71SpringMVC + Mybatis + SpringS ... -
maven构建高大上开源架构:springmvc+mybatis+rest+bootstrap html5
2015-04-12 23:25 23SpringMVC + Mybatis + SpringS ... -
手机App后台架构:Springmvc+SpringSecurity+mybatis+Rest+Quartz+Bootstrap Html5( Maven构建)
2015-04-09 01:39 76APP后台架构Maven构建,模拟大型互联网架构,支持高并发 ... -
maven构建springmvc+mybatis+rest+webservice+bootstrap html5(cms开源项目)
2015-04-09 01:21 85SpringMVC + Mybatis + SpringS ... -
WSDL Metadata not available to create the proxy, either Service instance
2013-09-02 23:12 4124错误信息: 严重: Servlet.service() f ... -
wsdl文件结构分析
2011-06-16 00:13 971wsdl文件结构分析 原文来自:http://webservi ... -
一个 XFire 初级入门例子
2010-11-08 00:13 1700在写简单例子之前,我们要做好如下准备: 到网上下载xfi ... -
AXIS 的安装
2010-10-24 17:11 1574Axis(Apache extensible interact ... -
web service 即时发布
2010-10-24 16:55 1259Axis提供两种发布方式: 1.即时发布(Instant d ... -
web service中Handler的高级应用
2010-10-24 16:32 31661.编写服务器端代码: pa ... -
取消web service 的发布.
2010-10-24 14:23 1442编写一个undeploy.wsdd文件,内容如下: ... -
web service 发布
2010-10-24 11:50 10611.使用elicpse工具,建立一个MyWebService项 ...
相关推荐
xfire开发web service文档.rar xfire开发web service文档.rar xfire开发web service文档.rar 含说明+步骤图片
第十五章 开发XFire Web Service应用22.pdf第十五章 开发XFire Web Service应用22.pdf第十五章 开发XFire Web Service应用22.pdf第十五章 开发XFire Web Service应用22.pdf第十五章 开发XFire Web Service应用22.pdf...
webservice中用到的jar,xfire-jaxws-1.2.6.jar,xfire-jaxws-1.2.6.jar,xfire-jaxws-1.2.6.jar
webservice中用到的jar,xfire-spring-1.2.6.jar,xfire-spring-1.2.6.jar,xfire-spring-1.2.6.jar,xfire-spring-1.2.6.jar
webservice中用到的jar,xfire-aegis-1.2.6.jar
MyEclipse实战开发讲解入门XFire.Web.Service.入门
使用xfire创建webservice是需要用的所有包,还有跟spring集成时(如果缺少)可能会报错的包,希望对大家有用 xfire-all-1.2.6.jar,jdom.jar,wsdl4j-1.5.1.jar,xbean-spring-2.8.jar
xfire-aegis-1.2.6.jar
xfire-spring-1.2.6.jar
xfire-annotations-1.2.6.jar
xfire-xmlbeans-1.2.6.jar,非常有用的一个jar包,希望大家下载
Java web Service 引擎 Xfire 图文教程.docx
XFire 入门 web service.wpsXFire 入门 web service.wpsXFire 入门 web service.wps
第十五章 开发XFire Web Service应用.pdf第十五章 开发XFire Web Service应用.pdf第十五章 开发XFire Web Service应用.pdf第十五章 开发XFire Web Service应用.pdf
XFire_WebService开发例子.zip XFire_WebService开发例子.zip XFire_WebService开发例子.zip