这篇文章教你如何利用IDEA发布WSDL

博主大学复习周精心制作,共推出几个模块供大家利用,

####今天我们先来学习一下如何利用IDEA发布WSDL
首先打开IDEA
新建一个Java项目




OK了基本的项目已经创建完成!
创建一个新的类命名为Java6WB代码如下所示:

package com.company;
import javax.jws.WebService;
@WebService
public class Java6WB {/*@param name*/public String SayHello(String name){return "Hello " + name;}/*@param a@param b*/public int Sum(int a, int b){return a+b;}
}
创建一个新的类名为 Test
在Test里利用Endpoint创建一个对象,并调用publish方法发布服务.
代码如下:
package com.company;
import javax.xml.ws.Endpoint;
public class Test {public static void main(String[] args) {Endpoint.publish("http://localhost:8080/ws/Java6WB",new Java6WB());}}

然后运行Test中的main方法发布服务,
由于之前在8080端口运行过其他项目,所以这里将端口改为8090
运行后访问浏览器的url’:
在publish方法后的第一个参数内,在Java6WB后面加上?wsdl访问

出现如下界面即可:

说明发布成功
然后通过JDK工具来生成客户端代码.
JDK提供了一个wsimport.exe 程序用来解析WSDL文件生成客户端代码
命令格式如下:

wsimport -d [class 文件存放目录] -s [源码存放目录] -p [包名] -keep [wsdl的URL]

我们在终端中使用如下命令:

wsimport -p com.company -keep http://localhost:8090/ws/Java6WB?wsdl

结果如图所示

并且在源文件的目录中出现了out


然后我们再建一个客户端项目,名为client
将刚才的生成的文件导入client项目中

并且创建class 名为 Testclinet

import com.company.Java6WB;
import com.company.Java6WBService;
public class Testclient {public static void main(String[] args) {Java6WB java6WB = new Java6WBService().getJava6WBPort();String result= java6WB.sayHello("K1rit0");int sum =java6WB.sum(1,300);System.out.println(result);System.out.println(sum);}
}

运行结果如下,即为成功

感谢阅读.如有疑问请在评论区发表!

IDEA wsdl教程相关推荐

  1. [转载]WSDL 教程

    http://www.w3school.com.cn/wsdl/index.asp WSDL 可描述网络服务(Web Services) WSDL 指网络服务描述语言 (Web Services De ...

  2. XSD(Schema)教程

    http://www.cnblogs.com/caoxch/archive/2006/11/17/563856.html XSD(Schema)教程 [转] schema教程 XML Schema是以 ...

  3. W3School 教程整理

    离线版大部分整理自 w3cschool ,少部分整理自w3school ,由本人整理. 感谢 w3cschool 站长的无私奉献. 由于本人精力有限,此处的列表不一定能够及时更新,最新版本请到本人博客 ...

  4. W3School教程整理

    W3School 教程整理 前端教程合集 在线浏览 AngularJS教程 Bootstrap教程 CSS参考手册 Foundation 教程 Highcharts 教程 HTML教程 CSS教程 F ...

  5. Web Services 平台元素

    Web Services 拥有三种基本的元素. 它们是:SOAP.WSDL 以及 UDDI. 什么是 SOAP? 基本的 Web services 平台是 XML + HTTP. SOAP 指简易对象 ...

  6. python处理csv百万数据-分分快3大小

    .NET Core教程 .NET Core是Microsoft最新的通用开发平台.它可以在不同的平台上工作,并且已经被重新设计,使.NET变得快速,灵活和现代. A/B测试教程 A/B测试是比较两个或 ...

  7. python处理csv数据-分分快3大小

    .NET Core教程 .NET Core是Microsoft最新的通用开发平台.它可以在不同的平台上工作,并且已经被重新设计,使.NET变得快速,灵活和现代. A/B测试教程 A/B测试是比较两个或 ...

  8. Java新特性(二 · JDK1.6)

    本篇文章介绍的JDK1.6的特性,这些特性主要还是了解即可. 1.Desktop类和SystemTray类 每一个Java应用都会包含一个Desktop和SystemTray实例,这个不需要你去实例化 ...

  9. XML-RPC - 快速指南

    XML-RPC - Quick Guidehttps://www.tutorialspoint.com/xml-rpc/xml_rpc_quick_guide.htm XML-RPC - 简介 RPC ...

最新文章

  1. 微信小程序开发框架从入门到放弃
  2. 在Asp.net页面中实现数据饼图
  3. CountDownLatch(线程计数器)
  4. Dubbo(十四) dubbo的服务降级与集群容错
  5. 计算机双系统,自己在计算机上安装双系统
  6. ideagit更新一个文件_idea使用ssh下载的git代码怎么没法更新
  7. python自动下载酷狗音乐_python实现酷狗音乐mp3下载
  8. word2016+endnoteX7的安装与配置
  9. 体验SubSonic
  10. 室友在宿舍玩游戏我学java_在宿舍写代码总被一个室友认为在装逼,该怎么办?...
  11. 什么是异地双活及应用场景
  12. 为什么信号源输出仅过一个电阻后,示波器测量出的输出电压会随输入频率增大而减小?----浅谈传输线分布电容与示波器的电容对信号传输的一种常见影响
  13. android图片凹凸效果,图像滤镜处理算法:柔化、光照、放大镜、哈哈镜
  14. 英特尔hd630驱动,intel hd graphics 630驅動
  15. ImageView(仿QQ图片查看器)
  16. 案例:js简单实现关闭淘宝二维码
  17. PostgreSQL多维空间对象——cube插件
  18. BOM的增删改及复制
  19. plc中int数据类型范围_[PLC]S7-300的数据类型
  20. 正则表达式 之 /g /m /i 的区别

热门文章

  1. 7-23 圆形体体积计算器 (20分)
  2. java e e_java – e.getMessage()和e.getLocalizedMessage()之间的区别
  3. 在 Ubuntu 18.04 中配置静态 IP 地址及灵活切换IP的办法
  4. UEFI的一点点概识
  5. BeautifulSoup4:抓取腾讯社招页面的招聘信息
  6. openCV常用網站
  7. 安徽教育网计算机一级考试查询成绩,安徽计算机一级考试成绩查询
  8. 狼人杀BETA阶段计划简介
  9. 烟道机器人_烟道气体流速流量检测爬壁机器人设计
  10. 【例10.6】在磁盘文件上存有10个学生的数据。要求将第1,3,5,7,9个学生数据输入计算机,并在屏幕上显示出来。