利用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>
得到最后的结果为
利用IDEA创建Web Service服务端和客户端的详细过程的更多相关文章
- Linux下用gSOAP开发Web Service服务端和客户端程序
网上本有一篇流传甚广的C版本的,我参考来实现,发现有不少问题,现在根据自己的开发经验将其修改,使用无误:另外,补充同样功能的C++版本,我想这个应该更有用,因为能用C++,当然好过受限于C. 1.gS ...
- ubuntu下安装 gSOAP 用于C/C++开发web service服务端与客户端
昨天在ubuntu下进行安装gSOAP,费了很多时间,没成功,今天又来找了大量教程资料,终于一次成功,这里写下自己的安装步骤和方法,供大家参考. 首先下载gsoap,我下载的是gsoap-2.8.1. ...
- Linux下用gSOAP开发Web Service服务端和客户端程序(一)
1.功能说明: 要开发的Web Service功能非常简单,就是一个add函数,将两个参数相加,返回其和. 2.C版本的程序: (1)头文件:SmsWBS.h,注释部分不可少,url部分的IP必须填写 ...
- 使用Eclipse自带Web Service插件(Axis1.4)生成Web Service服务端/客户端
创建一个名字为math的Java web工程,并将WSDL文件拷入该工程中 将Axis所需的jar包拷贝至WebRoot\WEB-INF\lib目录下,这些jar包会自动导入math工程中 一,生成W ...
- Eclipse+Axis使用WSDL文件生成Web Service服务端/客户端
JDK版本:1.5.0_22 Eclipse版本:Helios Service Release 2(3.6.2) WSDL文件的创建过程见http://blog.csdn.net/a19881029/ ...
- 基于JAX-WS的Web Service服务端/客户端 ;JAX-WS + Spring 开发webservice
一.基于JAX-WS的Web Service服务端/客户端 下面描述的是在main函数中使用JAX-WS的Web Service的方法,不是在web工程里访问,在web工程里访问,参加第二节. JAX ...
- 使用Eclipse自带的Axis1插件生成Web Service服务端客户端
JDK版本:1.5.0_22 Eclipse版本:Helios Service Release 2(3.6.2) WSDL文件的创建过程见http://blog.csdn.net/a19881029/ ...
- 使用axis开发web service服务端
一.axis环境搭建 1.安装环境 JDK.Tomcat或Resin.eclipse等. 2.到 http://www.apache.org/dyn/closer.cgi/ws/axis/1_4下载A ...
- 基于Apache CXF的Web Service服务端/客户端
转自:https://www.aliyun.com/zixun/wenji/1263190.html CXF服务端: package com.sean.server; import javax.jws ...
随机推荐
- markdown你的生活 | markdown编辑器简介
前言 你是否有这样的困扰?希望找一个笔记本记录东西,window自带的notepad(记事本)?,轻量但是功能太有限.word文档?功能虽多,但是很沉重,我们需要花很多时间去想如何排版会更记录会清晰, ...
- PHP(六)PHP和HTML混合的一种形式
- ## 20155336 2016-2017-2《JAVA程序设计》第八周学习总结
20155336 2016-2017-2<JAVA程序设计>第八周学习总结 教材学习内容总结 第14章 NIO与NIO2 NIO简介 NIO使用频道来衔接数据结点,在处理数据时,NIO可以 ...
- Spring MVC3.2 通过Servlet3.0实现文件上传
Servlet3.0规范增加了对文件上传的原生支持,这里记录一下Spring MVC3通过Servlet3上传文件的实现. 配置文件: applicationContext.xml <!-- s ...
- docker容器日志清理
1.先查看磁盘空间 df -h 2.找到容器的containerId-json.log文件,并清理(治标不治本,log迟早还会大的) 查看各个容器的log文件大小 find /var/lib/dock ...
- myeclipse过期以后提示过期以后怎么办?!
昨天电脑上装的myeclipse到期了,不能进到工作空间里边,只有激活和退出选项,在网上百度了一下,有很多破解工具, 1.刚开始直接使用工具破解,没有成功,总是提示要么激活,要么退出 2.继续想办法, ...
- Android Bug BaseExpandableListAdapter, getChildView
@Override public View getChildView(final int groupPosition, final int childPosition, boolean isLastC ...
- NOIP2013PUZZLE
#include<cstdio> #include<cstring> #define MIN(A,B) (A)<(B)?(A):(B) using namespace s ...
- “全栈2019”Java多线程第十六章:同步synchronized关键字详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- JS 获取各个偶数之和!!
<html> <head> <meta charset="utf-8" /> <title>js& ...