第九章 创建 Web Services - 查看 WSDL

2024-05-27 09:28

本文主要是介绍第九章 创建 Web Services - 查看 WSDL,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 第九章 创建 Web Services - 查看 WSDL
    • 查看 WSDL
      • 查看 WSDL
      • 生成 WSDL
        • `FileWSDL()`
      • 禁止 `WSDL` 中的内部 `Web` 方法

第九章 创建 Web Services - 查看 WSDL

查看 WSDL

当使用 %SOAP.WebService定义 Web 服务时,系统将创建并发布描述此 Web 服务的 WSDL 文档。每当修改并重新编译Web服务时,系统都会自动相应地更新WSDL。本节讨论以下内容:

  • 查看 WSDL 以及发布 WSDLURL
  • 可用于将 WSDL 生成为静态文档的方法

重要提示:根据定义,Web 服务及其 Web 客户端需要遵守通用接口,无论其各自的实现如何(并且无论技术有任何潜在的变化)。 WSDL 是该接口的符合标准的描述。重要的是要注意以下几点:

  • 实际上,单个 SOAP接口通常可以由多个略有不同的 WSDL 文档正确描述。

因此,生成的 WSDL 的形式可能略有不同,具体取决 的版本。描述任何此类差异超出了本文档的范围。 只能按照 W3C 规范的要求致力于 Web 服务及其各自客户端的互操作性。

  • W3C 规范不要求 Web 服务或 Web 客户端能够生成 WSDL 来描述其所遵循的接口。

为方便起见,系统生成 WSDL 文档并在特定 URL 上提供该文档。但是,如果包含的 Web 应用程序需要密码身份验证或需要 SSL 连接,您可能会发现以这种方式访问WSDL 是不切实际的。在这种情况下,应该将 WSDL 下载到文件中并使用该文件。此外,如前所述,生成的 WSDL 不包含有关运行时添加的 SOAP 标头的任何信息。如果需要 WSDL 文档来包含有关在运行时添加的 SOAP 标头的信息,则应将 WSDL 下载到文件中,根据需要修改该文件,然后使用该文件。

查看 WSDL

URL 具有以下形式,使用您的实例的:

https://<baseURL>/csp/app/web_serv.cls?WSDL

这里/csp/appWeb服务所在的Web应用程序的名称,web_servWeb``服务的类名。 (通常,/csp/app/csp/namespace`。)

注意:类名中的任何百分号字符 (%) 都将替换为此 URL 中的下划线字符 (_)。

例如:

https://devsys:52773/csp/mysamples/MyApp.StockService.cls?WSDL

浏览器显示WSDL文档,例如:

在这里插入图片描述

重要提示:并非所有浏览器都能正确显示架构。可能需要查看页面源代码才能看到实际的架构。例如,在 Firefox 中,单击鼠标右键,然后选择“查看源代码”。

生成 WSDL

还可以将 WSDL 生成为静态文档。类中的 %SOAP.WebService 提供了一个可用于此目的的方法:

FileWSDL()
ClassMethod FileWSDL(fileName As %String, includeInternalMethods As %Boolean = 1) As %Status 

其中 fileName 是文件的名称,includeInternalMethods 指定生成的 WSDL 是否包含任何标记为 InternalWeb 方法。

禁止 WSDL 中的内部 Web 方法

如果 Web 服务具有标记为“内部”的 Web 方法,则默认情况下 WSDL 会包含这些 Web 方法。可以阻止这些方法包含在 WSDL 中。为此,请执行以下任一操作:

  • 使用Web服务的FileWSDL()方法生成WSDL;请参阅上一节。此方法提供一个参数来控制 WSDL 是否包含内部 Web 方法。
  • Web 服务类中将 SOAPINTERNALWSDL类参数指定为 0。 (此类参数的默认值为 1。)

这篇关于第九章 创建 Web Services - 查看 WSDL的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1007079

相关文章

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

SpringBoot集成WebService(wsdl)实践

《SpringBoot集成WebService(wsdl)实践》文章介绍了SpringBoot项目中通过缓存IWebService接口实现类的泛型入参类型,减少反射调用提升性能的实现方案,包含依赖配置... 目录pom.XML创建入口ApplicationContextUtils.JavaJacksonUt

Linux中查看操作系统及其版本信息的多种方法

《Linux中查看操作系统及其版本信息的多种方法》在服务器运维或者部署系统中,经常需要确认服务器的系统版本、cpu信息等,在Linux系统中,有多种方法可以查看操作系统及其版本信息,以下是一些常用的方... 目录1. lsb_pythonrelease 命令2. /etc/os-release 文件3. h

Git打标签从本地创建到远端推送的详细流程

《Git打标签从本地创建到远端推送的详细流程》在软件开发中,Git标签(Tag)是为发布版本、标记里程碑量身定制的“快照锚点”,它能永久记录项目历史中的关键节点,然而,仅创建本地标签往往不够,如何将其... 目录一、标签的两种“形态”二、本地创建与查看1. 打附注标http://www.chinasem.cn

在Android中使用WebView在线查看PDF文件的方法示例

《在Android中使用WebView在线查看PDF文件的方法示例》在Android应用开发中,有时我们需要在客户端展示PDF文件,以便用户可以阅读或交互,:本文主要介绍在Android中使用We... 目录简介:1. WebView组件介绍2. 在androidManifest.XML中添加Interne

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解