MyEclipse创建Web Service Project实例

由MyEclipse搭建一个Web Service Project实例是非常容易的,在于知道和不知道而已,完全没有技术可言。

一个Web Service Project的主要任务,就是让几个不同的组件之间能够互相操作,而这一技术的实现,又依赖于HTTP 和 SOAP协议。SOAP,Simple Object Access Protocol,简单对象访问协议。

下面介绍一种比较流行的框架--XFire,在MyEclipse的搭建。

一、环境配置  MyEclipse8.5 && JDK1.6

二、new ==>Web Service Project

1)FrameWork选择XFire

2)Next,默认;

3)Library选择,XFire 1.2  Core Libraries;

4)Finish,文件结构如下:

5)从web.xml对比普通的web项目,我们可以看到很熟悉的东西,url-pattern,看到这几个配置,心理淡定了不少。

三、用MyEclipse为Web Service Project生成对外的接口:new ==> other ==>myelcipse ==> Web Services ==> Web service

1)Strategy是java class

 

2)Web Service Name:

 

3)finish

4)修改HelloServiceImpl.java以供测试

[java]  view plain copy
  1. public class HelloServiceImpl implements IHelloService {  
  2.       
  3.     public String example(String message) {  
  4.         return sayHello(message);  
  5.     }  
  6.       
  7.     private String sayHello(String name){  
  8.         return "Hello," +name;  
  9.           
  10.     }  
  11. }  


四、部署WebService

1)像部署普通web一样,部署到tomcat上去。

2)测试WebService,

3)打开Web Service Explorer之后,点击右上角一个WSDL Page的图标,Navigator里面的内容会变成WSDL Main,点击它,在右边的WSDL URL里面敲入:

http://localhost:8080/MyWebService/services/HelloService?WSDL

端口是对应的tomcat的端口,和你的webService的名称。开发过j2EE的朋友应该很容易理解,为什么要这样写地址,看一下生成的services.xml就知道了。

可以看到,现在对外的接口只有example一个。

通过浏览器访问URL,可以看到更加直观的wsdl:

 

五、写个Client尝试调用一下:

1)创建一个普通的java Project: new ==> java project

2)为新的project添加library。点击项目,鼠标右键,选择properties,选择左边的java build path,再点击右边的add library按钮,选择MyEclipse libraries,找到这两个文件:

3)新建一个类,调用example:

[java]  view plain copy
  1. import java.net.MalformedURLException;  
  2. import java.net.URL;  
  3.   
  4. import org.codehaus.xfire.client.Client;  
  5.   
  6. public class HelloInvoke {  
  7.   
  8.     /** 
  9.      * @param args 
  10.      * @throws Exception  
  11.      * @throws MalformedURLException  
  12.      */  
  13.     public static void main(String[] args) throws Exception {  
  14.         Client client = new Client(  
  15.                 new URL("http://localhost:8080/MyWebService/services/HelloService?WSDL")  
  16.         );  
  17.         //利用java的反射机制可以远程地得到已经在wsdl中声明的对象  
  18.         Object[] results = client.invoke("example"new Object[]{"jacob.Ye"});  
  19.         System.out.println("results[0] " + results[0]);  
  20.     }  
  21.   
  22. }  


运行:

output:

  /*

      Hello,jacob.Ye

  */

一个简单的WebService就算是调用完毕。



附加webservice解释说明

<? xml  version = "1.0"  encoding = "UTF-8" ?>
< beans  xmlns = "http://xfire.codehaus.org/config/1.0" >
   < service >
     < name >add</ name > <!-- 服务名称 -->
     < namespace >org.demo.webservice/add</ namespace > <!-- 指定命名空间 -->
     < serviceClass >org.demo.webservice.IAdd</ serviceClass > <!-- 指定服务的接口 -->
     < implementationClass >org.demo.webservice.Add</ implementationClass > <!-- 指定接口的实现类 -->
   </ service >
</ beans >

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值