1 开发服务端
myeclipse中新建web project
目录如下
定义的SEI
HelloWS.java
package ws;
import javax.jws.WebMethod;
import javax.jws.WebService;
/*
* SEI:
*/
@WebService
public interface HelloWS {
@WebMethod
public String sayHello(String name);
}
上方接口的实现类HelloWSImpl.java
package ws;
import javax.jws.WebService;
/*
* SEI的实现
*/
@WebService
public class HelloWSImpl implements HelloWS {
public String sayHello(String name) {
System.out.println("server sayHello()"+name);
return "Hello " +name;
}
}
注:
@WebService
作用在具体类上。而不是接口。
一个类只有添加了此注解才可以通过Endpoint发布为一个web服务。
一个添加了此注解的类,必须要至少包含一个实例方法。静态方法和final方法不能被发布为服务方法。
还需要写一个发布的类ServerTest.java
package ws.server;
import javax.xml.ws.Endpoint;
import ws.HelloWSImpl;
/*
* 发布Web Service
*/
public class ServerTest {
public static void main(String[] args) {
String address = "http://192.168.209.1:8989/ws02/helloWs1111";
Endpoint.publish(address , new HelloWSImpl());
System.out.println("发布webservice成功!");
}
}
运行发布类
2. 开发客户端
先测试一下上面的开发的服务端:
每个webService对应唯一 一个wsdl文件,在myeclipse中访问:
说明正常
新建web project
借助wsimport.exe工具生成客户端代码
希望在src目录下生成代码
输入:
创建完成刷新项目可以看到
建一个ClientTest,java 执行
成功调用了