eclipse创建webservice客户端和服务端

2023-11-17

先附上一个webservice的视频教程:

链接:https://pan.baidu.com/s/1qesv_A7cp-zYsL7fE5nmFw 
提取码:3d6k 

创建服务端(提供接口):

方式一:创建一个web工程,创建一个ServiceHello类,如下:

package com.test;

import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class ServiceHello {
	
	 public String sayHello(String name){
		 System.out.println("---BB---------ServiceHello--------------");
	        return "欢迎你! "+name;
	    }
	
	 public static void main(String[] args) {
	     Endpoint.publish("http://127.0.0.1:8080/BB/ServiceHello", new ServiceHello());
	     System.out.println("发布成功!");
	    }
}

创建webservice接口比较简单,在类上面加上@WebService注解,提供一个接口方法如sayHello,最后在main方法去发布接口。控制台打印出“发布成功”后,把main方法中的那个地址加上?wsdl复制到浏览器中,可以查看到这个wsdl文件。

但是这种方式是main方法运行的,一关闭就访问不到,一般都是通过tomcat发布的,所以这种方式只了解下。

方式二:创建一个web工程,创建一个ServiceHello类,类和上面相同,可以去掉main方法。

选中这个类右键,new一个web service,如下图:

点击next:

点击next,下图中选择提供接口的方法,因为这个类main方法我没去掉,所以显示两个方法,但是不选择main方法就行,点击finish完成。

会自动在项目下生产以下文件:

项目用tomcat启动,打开ServiceHello.wsdl文件,下面这个地址是接口地址,后面加?wsdl在浏览器中可以访问到。

 这种方式只是简单web项目,运行tomcat提供接口。视频中有基于Spring的WebService教程。

方式三: 对方提供一个wsdl文件,根据这个文件去生成服务端来提供服务。

创建一个web项目,把wsdl文件放在webcontent目录下:

 选择src或者项目右键,去new一个web service:

在“web service type”选择下面选项,然后点击Browser:

然后在新的弹出框中选择browser,去现在这个项目下的wsdl文件,点击OK:

点击OK:

点击finish:

会在项目下自动生成一些类,依赖jar包等文件,会生成新的wsdl文件,原先的wsdl文件就可以删除掉,项目通过tomcat启动即可访问到接口,访问和方式二的访问相同。

注意:这种方式有些是需要接口方法里面的逻辑的,把接口方法自己补充完整。

创建客户端(调用接口): 

方式一:通过提供的接口地址去生成客户端。我们用上面的http://localhost:8082/BB/services/ServiceHello?wsdl这个接口地址。

创建一个web项目:

选择项目右键去new一个web service client:

把接口地址填入service definition,这个地址一定是能访问得到的,不然会提示“The service definition selected is invalid.”,点击finish:

会自动生成一些接口文件。 

 生成之后去创建一个测试接口的类:

package com.test;

public class Test {
	public static void main(String[] args) throws Exception {
		ServiceHelloServiceLocator l =new ServiceHelloServiceLocator();
		ServiceHello service = l.getServiceHello();
		String s = service.getValue("test");
		System.out.println(s);
	}
}

 运行main方法,打印返回数据,测试成功:

方式二:通过给的wsdl生成客户端,来调用接口 。

创建一个web项目,把wsdl文件放在webcontent目录下,右键项目去new一个web service client:

点击browser去选择本项目下的wsdl文件,操作和根据wsdl创建服务端的操作相同。

点击finish,完成:

生成接口的类和依赖jar包:

这种方式需要注意一点,就是拿到的wsdl文件,文件最下面有接口地址:

 需要注意这个接口地址是不是可以访问的地址,或者是正式的接口地址,有时候是一个假的地址,访问不到,如下图:

这样生成的接口类,去测试是访问不到的,这时候去给对方要正式的接口地址,一般是在带有locator的这个类去改一下接口地址即可:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

eclipse创建webservice客户端和服务端 的相关文章

随机推荐

  • idea常用的快捷键和常用设置

    目录 1 常用idea快捷键 2 查找相关快捷键 3 常用项目快捷键 设置字体 字体文本设置 切换主题 字符编码设置 IDEA模板 idea 目录分层 1 常用idea快捷键 1 全选 CTRL A 最简单 几乎所有的编辑器都有此功能 2
  • UISearchBar 和 UISearchDisplayController的使用

    之前比較少用UISearchBar 和 UISearchDisplayController 最近閱讀了一些有關資料 簡單做個筆記 1 UISearchBar 和 UISearchDisplayController 在IB中是可以直接使用的
  • Xshell连接VMware CentOS7

    https blog csdn net weixin 43593086 article details 90247751
  • Android屏幕适配

    一 一些概念的理解 屏幕尺寸 屏幕的对角线 如一台小米电视49寸说的就是电视对角线长度是49寸 1英寸 2 54厘米 分辨率 1920 1080指纵向1920个像素点 横向1080个像素点 1280 720同理 屏幕像素密度 DPI
  • 跟我说回家,却还在外面鬼混,python程序员教你用微信给对方定位

    跟我说回家 却还在外面鬼混 其实很多情侣之间存在很多这样的信任问题 不相信他 去查岗 可能会恶化两人之间的关系 比如跟我说回家了 但是想知道他是否真的回家了 打电话 打视频查岗吗 今天教大家一个利用微信来给对方定位的黑科技 实现方法 其实实
  • python连接clickhouse,并实现对表内数据的增删改查

    基本信息 clickhouse 基本介绍可以参考 https clickhouse com docs zh python 连接 clickhouse 可以参考 https clickhouse com docs en integration
  • 网络 链路层

    数据链路层是计算机网络的底层 主要负责相邻设备之间的数据帧传输 链路层就是负责每一个相邻结点之间的数据传输 但是相邻设备之间也需要描述识别 主要是因为每一个设备都有可能有多个相邻的设备 这种识别在链路层中是通过MAC地址来实现的 MAC地址
  • C++ 类型转换

    文章目录 c语言中的类型转换 为什么C 需要四种类型转换 C 强制类型转换 static cast reinterpret cast const cast dynamic cast c语言中的类型转换 在C语言中 如果赋值运算符左右两侧类型
  • centos7 搭建深度学习环境

    本文引用转载自博客园 经实践可用 对原内容进行了删减调整 后续作者理解更深了 可能更新 一 安装NVIDA组件 1 安装CUDA CUDA又叫cuda toolkit 是NVIDA公司专门开发的一套接口 方便利用GPU做高速计算 主流的深度
  • 将hexo博客搭建在github上

    注册github账号并创建仓库 首先在github上注册账号 填写用户名 email 密码 会有验证通过邮箱发送给你 进行验证 选择仓库 创建一个和你用户名相同的仓库 如 你的 用户名 github io 必须以用户名开头 创建仓库 步骤
  • java8的函数式编程

    1 函数式接口 特定的一类接口 概念 接口里面有且只有一个抽象方法 对于接口里面的默认方法和静态方法不作限制 一般会有 FunctionalInterface修饰 可以没有 FunctionalInterface public interf
  • Redis如何实现布隆过滤器

    本文将介绍布隆过滤器的原理以及Redis如何实现布隆过滤器 应用场景 1 50亿个电话号码 现有10万个电话号码 如何判断这10万个是否已经存在在50亿个之中 可能方案 数据库 set hyperloglog 2 新闻客户端看新闻时 它会不
  • QObject::connect: Cannot queue arguments of type 'string'

    信号槽传递非Qt库类型参数时 出现QObject connect Cannot queue arguments of type string Make sure string is regi 例如以C 标准库中string做参数 则会出现
  • mockjs的基本使用和登录跳转到主页加折叠事件

    目录 1 mockjs 1 1 mockjs介绍 1 2 mockjs使用步骤 1 2 1 安装mockjs依赖 1 2 2 在项目中引入mockjs 1 2 3 创建目录和文件 1 2 4 为每个组件准备模拟数据 1 2 5 测试 1 2
  • 零基础如何学习Java?Java学习路线图

    课程表 笔记 包含知识点 Java 第一天 基础语法 人机交互 Java以及发展史 主要特性 JRE和JDK Java 第二天 Java基础 注释 字面量 变量 数据类型 标识符 键盘录入 Java 第三天 IDEA下载安装 IDEA下载安
  • MySql-MHA-Docker 集群部署搭建

    MySql MHA Docker集群部署搭建 本文概述 机器准备 前置条件 MySQL主从复制集群搭建 1 安装mysql 准备3台机器安装mysql 2 安装配置mysql master 3 安装配置 88 mysql slave 4 安
  • [665]微信之wechat-sender(基于wxpy库)

    注意 wechat sender基于wxpy wxpy基于itchat 目前腾讯以大批量关闭微信网页版接口 所以wechat sender当前已不能使用 以下仅做学习记录 wechat sender 是基于 wxpy 和 tornado 实
  • [软件工程] 实现

    实现 实现 7 1 编码 7 1 1 选择程序设计语言 7 1 2 编码风格 1 程序内部的文档 2 数据说明 3 语句构造 4 输入输出 5 效率 7 2 软件测试基础 7 2 1 软件测试的目标 7 2 2 软件测试准则 1 所有测试都
  • layui table按条件设置背景颜色

    var that this elem next res data forEach function item index if item deleted 1 var tr that find layui table box tbody tr
  • eclipse创建webservice客户端和服务端

    先附上一个webservice的视频教程 链接 https pan baidu com s 1qesv A7cp zYsL7fE5nmFw 提取码 3d6k 创建服务端 提供接口 方式一 创建一个web工程 创建一个ServiceHello