MyEclipse6.5上基于JAX-WS开发Webservice

MyEclipse6.5上基于JAX-WS开发Webservice

2010-06-26 来自:博客园 字体大小:【    
  • 摘要:本文介绍MyEclipse6.5上基于JAX-WS开发Webservice

环境说明:
MyEclpose 6.5 blue Milestone-1
jdk 1.6.0_15
tomcat 6.0

创建并发布服务器端应用

1.新建web service project
设置如下图。


2.建立一个实现类,代码如下:

 

package  net;

public   class  addImpl {
    
public   double  add( double  num1, double  num2){
        
return  num1 + num2;        
    }
}

 


这里只需要实现类,不再像XFIRE还需要一个接口。


3.建立web
service
选择工程名,点击工具栏的new web service按钮。


然后如下配置:

接着(在JAVA BEAN中输入实现类的名称,选择generate wsdl in project):

点击finish后包中多出一个该实现类的代理类addImplDelegate.java

4.导入包
工程-属性-build path-add library-myeclipse libraries导入以下两个包:

如果缺少这两个包,tomcat启动时会出现以下错误: 

 

严重: Error configuring application listener of  class  com.sun.xml.ws.transport.http.servlet.WSServletContextListener
java.lang.ClassNotFoundException: com.sun.xml.ws.transport.http.servlet.WSServletContextListener

 


5.启动tomcat,验证并获取WSDL文件

启动tomcat后在浏览器中输入http://localhost:8080/jaxws_src/addImplPort并点击页面中的链接查看WSDL文件,如果该文件能正确显示证明服务器端大功告成。
wsdl文件的uri是http://localhost:8080/jaxws_src/addImplPort?wsdl(你可能会问URI中的addImplPort从何而来,其实这个名字由图4中的Services port设定)


创建客户端调用

(不要关闭TOMCAT啊,不然。。。。。)
1.新建java project,建立一包(包名安需求)net.
2.选择包点new web services client(参照本文的第二张图)
   ps:有别与xfire,客户端不一定是服务端相同类型的web services client,可以是一个普通的工程也OK!!
3.指定wsdl的URI或wsdl的文件路径(见上)。
程序在net包中生成一些类如图:

ps:图中的add.java是一个javabean来,聪明的你应该知道它有啥用了吧!!
4.新建一个测试类:

 

package  com;

import  net.AddImplDelegate;
import  net.AddImplService;

public   class  test {    
    
public   static   void  main(String[] args) {
        AddImplService service
= new  AddImplService();
        AddImplDelegate d
=  service.getAddImplPort();
        
double  result =  d.add( 15.6 12.5 );
        System.out.println(result);
    }
}

 



ok!大功告成啦!!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值