码迷,mamicode.com
首页 > 其他好文 > 详细

jax-ws服务端生成和客户端调用实例

时间:2014-12-14 21:20:39      阅读:279      评论:0      收藏:0      [点我收藏+]

标签:webservice   wsdl   web service   server   java   

最近公司让基于别的公司的接口写一个自己的接口,接口对于别的公司来说相当于客户端,但对于自己本公司要调用的程序来说,又相当于服务端。

闲来无事,总结下。

先从java自带的service开始

JAX-WS(java api xml webservice)  基于javaAPI的webService实现

用的工具是myeclipse

首先是服务端

1.新建webProject  jax-wsServer  如图:

bubuko.com,布布扣

2.新建包和类如下图

bubuko.com,布布扣

既然是入门例子,咱就越简单越好,关键看好流程

IMService.java 内容如下

package com.jax.server;
public interface IMyService {
public int add(int a,int b);
public int minus(int a,int b);
}


MyServiceImpl.java内容如下

package com.jax.server;
public class MyServiceImpl implements IMyService {
public int add(int a, int b) {
// TODO Auto-generated method stub
return a+b;
}
public int minus(int a, int b) {
// TODO Auto-generated method stub
return a-b;
}
}

以上基本准备工作就算完成了,下边是应用MyEclipse具体生成的步骤。

1 右键 src-new others,选择web service  如图:

bubuko.com,布布扣

2.单击下一步,选择用JAX-WS方式,从java类创建,如图:

bubuko.com,布布扣

3.点击Next,选择要用到的类,就是我们刚才创建的MyServiceImpl,要是实体类。

选择在工程中生成wsdl,如图:

bubuko.com,布布扣

点击Finish。

4.右键工程,选择Properties,选择"Java Build Path",然后选择"Libraries",如图:

bubuko.com,布布扣

5.点击 Add Libraries,选择 MyEclipse Libraries,如下图:

bubuko.com,布布扣

6.点击Next,选择 JAX-WS,如图:

bubuko.com,布布扣

7.点击Finish,如下图:

bubuko.com,布布扣

8.点击OK,工程结构如下图:

bubuko.com,布布扣

9.至此,服务端程序生成完毕,部署到Tomcat下,启动Tomcat,访问地址http://localhost:8080/ProjectWS/WSServerPort?wsdl,如下图

bubuko.com,布布扣

出现如上图所示的wsdl页面了,说明本地服务已经启动,可以访问了。

对外地址是http://localhost:8080/jax-wsServer/MyServiceImplPort?wsdl

命名空间targetNamespace="http://server.jax.com/"

服务名 portType name="MyServiceImplDelegate"

提供两个方法  add和minus

这样完整的WebService服务端,就配置并发布完成了。


下边是jax-ws服务端的生成和调用方式。

1.可以新建工程(由于是测试,为了省事,这里和server用一个工程),右键src,选择web Service Client,如图:

bubuko.com,布布扣

2.选择web Service Client,点击Next,如下图:

bubuko.com,布布扣

3.点击Next,指定访问的webService的路径,就是我们刚才访问的地址,指定客户端文件的包bubuko.com,布布扣

4.点击Next,如下图:

bubuko.com,布布扣

5.Finish完成,客户端文件生成完毕,结构如下:

bubuko.com,布布扣

6.编写测试类TestClient,代码如下

package com.jax.client;
public class TestClient {
public static void main(String []arg){
//服务的具体类,继承了service类
MyServiceImplService service=new MyServiceImplService();
//服务的接口,通过getPort()方法得到
MyServiceImplDelegate se=service.getPort(MyServiceImplDelegate.class);
//通过服务的接口调用方法
int add=se.add(34, 23);
int minus=se.minus(34, 23);
System.out.println("34+23="+add);
System.out.println("34-23="+minus);
}
}

7.运行结果如下:

bubuko.com,布布扣

到此完整的关于 JAX-WS的服务端、客户端的生成调用的整个过程就完成了,与大家一起学习、共勉。

后续会还有CXF的详细过程。




jax-ws服务端生成和客户端调用实例

标签:webservice   wsdl   web service   server   java   

原文地址:http://blog.csdn.net/afterlife_qiye/article/details/41923807

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!