您的位置:首页 > 运维架构 > Tomcat

利用IDEA创建Web Service服务端和客户端

2016-11-01 16:13 197 查看

创建服务端

一、file–>new–>project



二、点击next后输入服务端名,点击finish,生成目录如下



三、在 HelloWorld.Java 文件中右击,选 WebServices ,再选 Generate Wsdl From Java Code ,确定



点击ok会自动给我们生成HelloWorld.wsdl,画红线处注意修改



四、配置tomcat,此处不多说,主要是配置好tomcat后还需要加入 Axis 的库



点击右下角fix即可,重新启动 tomcat ,在浏览器中输入:http://localhost:8080/services ,出现如下信息,代表部署成功。



点击HelloWorld (wsdl)可看到相应的信息



至此,服务器端的Web Service就创建好了,下面我将继续讲解如何创建客户端的Web Service!

创建客户端:

一、file–>new–>project



输入客户端项目名,finish即可,项目创建成功会自动跳出如下界面,手动可以右键项目–>webService–>Generate Java Code From Wsdl 即可



导入之前创建的服务端的wsdl文件即可



点击ok,idea会帮我们生成好相对应的代码,测试类如下:

package example;/**
public class HelloWorldClient {
public static void main(String[] argv) {
try {
HelloWorldServiceLocator locator = new HelloWorldServiceLocator();
Activator service = locator.get();
// If authorization is required
//((HelloWorldSoapBindingStub)service).setUsername("user3");
//((HelloWorldSoapBindingStub)service).setPassword("pass3");
// invoke business method
service.businessMethod();
} catch (javax.xml.rpc.ServiceException ex) {
ex.printStackTrace();
} catch (java.rmi.RemoteException ex) {
ex.printStackTrace();
}
}
}


此时会有报错,HelloWorldServiceLocator类是由于没有导包按alt+enter导包即可,下面

Activator service = locator.get();
service.businessMethod();


改成

HelloWorld_PortType service = locator.getHelloWorld();
System.out.println(service.sayHelloWorldFrom("sdsa"));


此时运行客户端main方法还会报错,报错的原因是没有junit的jar包,我的做法是加入maven

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>


用tomcat运行服务端,再用客户端进行测试即可!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息