利用IDEA创建Web Service服务端和客户端的详细过程
创建服务端
一、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; import com.HelloWorldServiceLocator;
import com.sun.corba.se.spi.activation.Activator; 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();
String str = service.sayHelloWorldFrom("sushan");
System.out.println(str);
此时运行客户端main方法还会报错,报错的原因是没有junit的jar包,我的做法是加入maven
此时运行客户端main方法还会报错,报错的原因是没有junit的jar包,我的做法是加入maven
具体步骤:
1.现在项目新建一个pom.xml(最好从已有的maven项目中粘贴过来)
2.关闭项目 删除最近打开历史 重新打开这个项目
3.显示是否变味maven项目 点击 是
然后在pom中加入依赖
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
得到最后的结果为
最新文章
- awk用法
- Maven学习笔记-03-Eclipse下maven项目在Tomcat7和Jetty6中部署调试
- Envelope对象介绍
- ID3
- 自定义Mvc5 Owin 验证
- CHROME下载地址
- shell脚本字符串截取
- HDU 5768 Lucky7 (容斥原理 + 中国剩余定理 + 状态压缩 + 带膜乘法)
- C#---------------继承和多态初步
- JVM学习笔记三:垃圾收集器与内存分配策略
- Java学习笔记14(面向对象七:final、static)
- github上用golang写的项目
- 汇编语言--微机CPU的指令系统(五)(位操作指令)
- 关于DDR3控制器的使用
- OO Summary Ⅲ
- Jquery基础知识点
- BZOJ1492 货币兑换 CDQ分治优化DP
- GROUP BY和 HAVING 及 统计函数 执行顺序等
- 使用apt install和使用apt-get install的区别是什么
- epoll好文章