首页 > 编程语言 >「Java开发指南」如何从WSDL搭建一个Spring服务?

「Java开发指南」如何从WSDL搭建一个Spring服务?

时间:2024-03-26 09:55:24浏览次数:28  
标签:web 服务 Web Spring Java WSDL

本教程的重点是如何从现有的WSDL构建Web服务,实现的WSDL是来自Apache CXF文档的HelloWorldWSDL协议 的简化版本。在本教程中,您将学习如何:

  • 导入WSDL协议
  • 部署并运行web服务

注意:自定义Spring代码生成需要MyEclipse Spring或Bling授权

MyEclipse v2023.1.2离线版下载

MyEclipse技术交流群:742336981 欢迎一起进群讨论

一、 导入HelloWorld Web服务协议

当设计由多个使用web服务相互通信的应用程序组成的系统时,通常使用协议优先开发作为定义系统之间处理消息的一种方法,这包括识别服务操作和输入/输出参数。这被称为协议,它是使用WSDL文档定义的,服务消费者和生产者使用WSDL文档作为协议。

MyEclipse可以通过导入WSDL来实现web服务协议,当然这与为了消费服务而发现Web服务式不同的。

1. 创建取名为HelloWorldApp的全新MyEclipse Web项目。

2. 右键单击该项目,然后选择MyEclipse>Import WSDL。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 添加一个新类

3. 在WSDL Location字段中添加以下WSDL URL:http://www.skywayperspectives.org/documentation/me4s90/wsdl/helloworld.wsdl,在Target Package字段中输入org.helloworld,然后点击Next。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 导入WSDL URL

4. 接受默认的项目配置选项,然后单击Next。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 配置选项

5. 接受默认的JAX-WS设置,并单击Next。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 配置选项

6. 接受默认的Spring Capabilities设置,然后单击Next。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 添加Spring功能

7. 接受应该添加到当前项目中库的默认设置,然后单击Next。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 运行时依赖关系

8. 在Summary页面上单击Finish,生成实现web服务所需的源代码。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 摘要页
二、审查生成的代码

Import Web Services向导通过生成与Web服务交互所需的Java类,帮助从应用程序内部使用外部SOAP Web服务。Import Web Services向导还通过从WSDL (SOAP Web服务协议)中提取服务的具体实现来帮助您实现服务协议(称为协议优先开发)。

默认情况下,源代码在生成文件夹中生成。由于该文件夹不存在,向导将创建该文件夹并将其设置为Eclipse源文件夹。生成的Java文件快照如下图所示,创建的所有构件都反映WSDL中的web服务定义。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 从WSDL生成Java文件

org.apache.hello_world_soap_http.type包包含为WSDL实体生成的源代码,包的名称基于WSDL中指定的目标命名空间。

org.helloworld包包含生成的Spring服务接口、Spring服务实现(Spring @Service)和Junit测试。

org.helloworld.jaxws包包含生成的服务端点接口和服务客户端,服务端点接口应该有一个用于web服务操作的Java方法。

本教程关注的是根据WSDL实现web服务,而GreeterImpl.java是实现服务操作的Spring Service,在Java编辑器中打开该文件,可以看到每个服务操作都有一个方法,剩下唯一要做的就是用所需的功能实现该方法。

「Java开发指南」MyEclipse如何支持Spring Scaffolding? 从WSDL生成Java文件
三、部署并运行Web服务

在实现服务方法之后,可以部署web项目并测试服务。

注意:您可以在不实现服务方法的情况下执行以下步骤,但是当您打开Web服务资源管理器时,将找不到要测试的服务。

  1. 右键选择该项目,然后选择Run As>MyEclipse Server Application,再选择MyEclipse Tomcat服务器。
  2. 部署完应用程序后,切换到JAX-WS Annotations视图,并Java编辑器中打开GreeterImpl.java 文件 (org.helloworld package) 。
  3. 单击JAX-WS Annotations视图中的Open Web Service Explorer链接。这将在Web服务资源管理器中打开WSDL,可用于测试Web服务。如果您想在另一个测试工具中测试服务,则WSDL URL为:http://localhost:8080/HelloWorldApp/jaxws/IGreeterEndpoint?wsdl

标签:web,服务,Web,Spring,Java,WSDL
From: https://www.cnblogs.com/AABBbaby/p/18095932

相关文章

  • Java面试必问题18:线程安全的集合类和有序的集合类
         精华篇:  极致精简解释有序的集合类包括:TreeMap-基于红黑树实现的有序Map。LinkedHashMap-基于哈希表和双向链表实现的有序Map。TreeSet-基于红黑树实现的有序Set。LinkedHashSet-基于哈希表和双向链表实现的有序Set。示例:有序Map:TreeMap有序Li......
  • java毕业设计房产销售管理小程序[附源码]
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:在当今数字化时代,房产销售行业正经历着前所未有的变革。随着信息技术的飞速发展,传统的房产销售模式已经无法满足市场的需求。购房者越来越倾向于通过网络......
  • springboot项目的目录顺序
    在idea上自动生成的springboot项目中一定要注意文件的上下顺序此时在项目运行时并不会报错但是不会执行utils下的类此时 此时 utils下的类是一个解析类可以解析一份存放在resources下的一份emp.xml文件并把解析后的数据返会给一个集合,因为此时不会执行utils下的类所以......
  • 完整的logback-spring.xml配置文件
    <?xmlversion="1.0"encoding="UTF-8"?><!--日志级别从低到高分为TRACE<DEBUG<INFO<WARN<ERROR<FATAL,如果设置为WARN,则低于WARN的信息都不会输出--><!--scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true--><!--scanPeriod:设置监......
  • 如何使用 JavaScript 导入和导出 Excel
    前言在现代的Web应用开发中,与Excel文件的导入和导出成为了一项常见而重要的任务。无论是数据交换、报告生成还是数据分析,与Excel文件的交互都扮演着至关重要的角色。本文小编将为大家介绍如何在熟悉的电子表格UI中轻松导入Excel文件,并以编程方式修改表格或允许用户进行编辑,最......
  • Java服务器开发的日志:日志的作用和使用方法;日志文件的定期归档、清理和滚动策略;ELK(又
    Java服务器开发的日志Java服务器开发,为什么要使用日志?应该怎样使用日志?在Java服务器开发中使用日志是非常关键的一个实践,原因如下:本文所说的“日志”,主要是指程序运行时生成的技术日志;它在Java服务器开发中的作用和使用方法如下:故障诊断:技术日志主要用于记录程序运......
  • JAVA中CAS原理
    在Java中,CAS(Compare-and-Swap)是一种无锁算法,通过JNI(JavaNativeInterface)调用本地方法来利用处理器提供的原子指令实现。它可以保证在多线程环境下的原子性和可见性,而无需使用传统的锁机制。以下是一个简单的Java示例,通过java.util.concurrent.atomic包下的AtomicInteger类来......
  • 【附源码】java毕业设计生活旅行分享网站的设计与实现
    本系统(程序+源码)带文档lw万字以上 文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:随着经济的发展和生活水平的提高,旅行已经成为现代人休闲放松的一种重要方式。人们不仅希望在旅行中体验不同的文化、风光和生活,还愿意通过互联网与他人分......
  • Spring笔记——SpringBoot启动流程
    Spring笔记——SpringBoot启动流程创建ApplicationContext配置资源加载器配置启动类确定web容器类型获取一些BootStrap容器初始动作配置一些容器初始动作配置一些监听器运行ApplicationContext创建BootStrap容器并设置监听器准备容器环境启动容器调用所有Applica......
  • [附源码]计算机毕业设计高校教材管理系统(JSP+java+springmvc+mysql+MyBatis)
    本项目包含程序+源码+数据库+LW+调试部署环境,文末可获取一份本项目的java源码和数据库参考。项目文件图项目介绍随着高校教育资源的不断扩充和教育体系的日益复杂化,高效的教材管理变得尤为重要。一个专业的高校教材管理系统能够实现教材信息的集中管理、库存状态实时监控、......