文章
· 八月 10, 2024 阅读大约需 2 分钟
第六章 定义单向 Web 方法

[toc]

第六章 定义单向 Web 方法

通常,当 Web 客户端调用 Web 服务时,会返回 SOAP 消息,即使该方法没有返回类型并且在 数据平台中执行时不返回任何内容。

在极少数情况下,可能需要将 Web 方法定义为单向的。此类方法不得返回任何值,并且消息不需要 SOAP 响应。

注意:通常不应使用单向方法。请求-响应对更为常见、更受支持且更受期待 — 即使对于没有返回类型的方法也是如此。

要定义单向 Web 方法,请将该方法的返回类型定义为 %SOAP.OneWayWSDL 未定义此 Web 方法的输出,并且 Web 服务不返回 SOAP 消息。

0 0
0 33
文章
· 八月 8, 2024 阅读大约需 2 分钟
第四章 控制编码格式的内联引用的使用

第四章 控制编码格式的内联引用的使用

控制编码格式的内联引用的使用

采用编码格式,任何对象值属性都作为引用包含在内,并且引用的对象作为单独的元素写在 SOAP 消息中。

要以内联方式写入编码对象,请在 Web 客户端中将 REFERENCESINLINE 参数或 ReferencesInline 属性指定为 `1。属性优先于参数。

指定信封前缀

默认情况下, Web 客户端在其发送的 SOAP 消息的信封中使用前缀 SOAP-ENV。可以指定不同的前缀。为此,请设置 Web 客户端类的 SOAPPREFIX 参数。例如,如果将此参数设置为 MYENV,则 Web 客户端会在其消息中包含此前缀,而不是 SOAP-ENV

0 0
0 50
文章
· 八月 7, 2024 阅读大约需 1 分钟
第三章 控制 xsi type 属性的使用

第三章 控制 xsi:type 属性的使用

控制 xsi:type 属性的使用

默认情况下, SOAP 消息仅包含顶级类型的 xsi:type属性。例如:

<?xml version="1.0" encoding="UTF-8" ?>
...
<types:GetPersonResponse>
<GetPersonResult href="#id1" />
</types:GetPersonResponse>
<types:Person id="id1" xsi:type="types:Person">
<Name>Yeats,Clint C.</Name>
<DOB>1944-12-04</DOB>
</types:Person>  
...

在这些示例中,已添加换行符以提高可读性。要将此属性用于 SOAP 消息中的所有类型,请执行以下操作之一:

0 0
0 31
文章
· 八月 6, 2024 阅读大约需 2 分钟
第二章 使用代理服务器

第二章 使用代理服务器

使用代理服务器

Web 客户端可以通过代理服务器与 Web 服务通信。要进行设置,请指定 Web 客户端实例的属性以指示要使用的代理服务器。这些属性如下:

HttpProxyServer

指定要使用的代理服务器的主机名。如果此属性不为空,则 HTTP 请求将定向到此计算机。

HttpProxyPort

指定代理服务器上要连接的端口。

HttpProxyHTTPS

如果使用代理服务器并且该代理服务器支持 HTTPS,则将其指定为 true

请注意,如果使用 HTTPS,则还必须将客户端的 SSLConfiguration 属性设置为 SSL/TLS 配置的名称;有关更多详细信息,请参阅配置客户端以使用 SSL

0 0
0 26
文章
· 八月 5, 2024 阅读大约需 2 分钟
第一章 修改 Web 客户端

第一章 修改 Web 客户端

修改 Web 客户端

生成 Web 客户端类后,通常不需要编辑该类。相反,需要编写代码来创建该类的实例并提供客户端错误处理。本主题讨论了微调 Web 客户端的各种方法,可以通过修改 Web 客户端实例或(不太常见)修改生成的类来实现。

注意:不要创建生成的 Web 客户端类的子类。编译器不会生成正常运行所需的支持类,因此子类将无法使用。

禁用 Web 客户端的 Keep-Alive

默认情况下,如果重复使用 Web 客户端实例来发送多条请求消息,IRIS 会在一次 HTTP 传输中发送所有消息(使用 HTTP 1.1 保持活动连接)。具体来说,IRIS 保持 TCP/IP 套接字打开,这样 IRIS 就无需关闭并重新打开它。要禁用此保持活动行为,请执行以下操作之一:

0 0
0 36
文章
· 七月 30, 2024 阅读大约需 3 分钟
第九章 使用进程私有全局变量来支持非常大的消息

第九章 使用进程私有全局变量来支持非常大的消息

使用进程私有全局变量来支持非常大的消息

默认情况下、 Web 服务在解析请求或响应时通常使用本地数组内存。可以强制它改用进程私有全局变量;这使 Web 服务能够处理非常大的消息。

为此,请指定 Web 服务类的 USEPPGHANDLER 参数,如下所示:

Parameter USEPPGHANDLER = 1;

如果此参数为 1,则 Web 服务在解析请求或响应时始终使用进程私有全局变量。如果此参数为 0,则 Web 服务始终使用本地数组内存来实现这些目的。如果未设置此参数,则 Web 服务使用默认值,通常是本地数组内存。

自定义 Web 服务的回调

可以通过覆盖其回调方法来定制 Web 服务的行为:

0 0
0 32
文章
· 七月 25, 2024 阅读大约需 2 分钟
第四章 覆盖 HTTP SOAP 操作和请求消息名称

第四章 覆盖 HTTP SOAP 操作和请求消息名称

覆盖 HTTP SOAP 操作和请求消息名称

当通过 HTTP 调用 Web 方法时,HTTP 标头必须包含 SOAP 操作,该操作是指示 SOAP HTTP 请求意图的 URI。对于 SOAP 1.1SOAP 操作作为 SOAPAction HTTP 标头包含在内。对于 SOAP 1.2,它包含在 Content-Type HTTP 标头中。

SOAP 操作指示 SOAP HTTP 请求的意图。该值是一个标识意图的 URI;它通常用于路由入站 SOAP 消息。例如,防火墙可以使用此标头适当地过滤 HTTP 中的 SOAP 请求消息。

1 0
0 58
文章
· 一月 23, 2024 阅读大约需 3 分钟
第七章 使用 SQL Search - 同义词表

第七章 使用 SQL Search - 同义词表

同义词表

要实现同义词表,请将该表定义为扩展 iFind.Synonym 抽象类的持久类。

此类定义了两个属性:FromTermToTerm。一对 FromTermToTerm 属性将 ToTerm 定义为 FromTerm 的同义词。如果查询包含 FromTermSQL 搜索将使用 ToTerm 来扩展查询。

该查询使用此类的 GetMatch() 方法根据查询词在同义词表中搜索同义词。

0 0
0 51
文章
· 一月 5, 2024 阅读大约需 3 分钟
第十六章 调用Callout Library函数

第十六章 调用Callout Library函数

Callout 库是一个共享库(DLLSO 文件),其中包含 $ZF Callout 接口的挂钩,允许各种 $ZF 函数在运行时加载它并调用其函数。 $ZF Callout 接口提供了四种不同的接口,可用于在运行时加载 Callout 库并从该库调用函数。这些接口的主要区别在于如何识别库并将其加载到内存中:

0 0
0 52
文章
· 一月 4, 2024 阅读大约需 2 分钟
第十五章 创建Callout Library - 处理 UNIX 信号处理错误

第十五章 创建Callout Library - 处理 UNIX 信号处理错误

处理 UNIX 信号处理错误

UNIX 及相关操作系统下运行时,如果进程收到信号,某些系统调用可能会失败,最常见的是打开、读取、写入、关闭、ioctl 和暂停。如果函数使用任何这些系统调用,代码必须能够区分真正的错误、Ctrl-C 和应重新启动的调用。

以下函数允许检查异步事件并在 $ZF 中设置新的警报处理程序。函数声明包含在 iris-cdzf.h 中:

sigrtclr()

int sigrtclr(); — 清除重试标志。应在使用 sigrtchk() 之前调用一次。

dzfalarm()

int dzfalarm(); — 建立新的 `SIGALRM 处理程序。

进入 $ZF 时,会自动保存先前的处理程序。退出时会自动恢复。用户程序不应改变任何其他信号的处理。

0 0
0 65

第十一章 创建Callout Library - 使用 J 链接类型传递标准计数字符串

使用 J 链接类型传递标准计数字符串

iris-callin.h 头文件定义了计数字符串结构 IRIS_EXSTR,表示标准 IRIS 字符串。此结构包含一个字符元素数组(8 位、16Unicode32wchar t)和一个指定数组中元素数量的 int 值(最多字符串长度限制):

0 0
0 44
文章
· 十二月 27, 2023 阅读大约需 2 分钟
百讲知识点索引

百讲知识点索引

简介

  • B站已更新截止到2023.12.31之前的所有百讲课程,总计261讲。
  • 什么是百讲?百讲是一个主要介绍IRISCache编程知识的免费课程。
  • 课程的特点是,将每一个知识点,都会用示例演示出来、了解原理,而不是仅仅告诉有这个功能。
  • 每周一期,每期会请到有多年开发经验的老师来给大家讲解课程。
  • 百讲观看地址:https://www.bilibili.com/video/BV1cw41147xr/

在这里插入图片描述

3 1
0 177
文章
· 十二月 27, 2023 阅读大约需 2 分钟
第七章 创建Callout Library - 创建 ZFEntry 表

第七章 创建Callout Library - 创建 ZFEntry 表

创建 ZFEntry

每个 Callout 库必须定义一个 ZFEntry 表,该表允许 IRIS 加载和访问 Callout 函数。 ZFEntry 表由以 ZFBEGIN 开头、以 ZFEND 结尾的宏代码块生成。在这两个宏之间,必须为要公开的每个函数调用一次 ZFENTRY 宏。

每个 ZFENTRY 调用都采用三个参数:

   ZFENTRY(zfname,linkage,entrypoint)

其中 zfname 是用于在 $ZF 调用中指定函数的字符串,linkage 是指定如何传递参数的字符串,entrypointC 函数的入口点名称。

0 0
0 61
文章
· 十二月 26, 2023 阅读大约需 4 分钟
第六章 创建Callout Library

第六章 创建Callout Library

Callout library 库是一个共享库,其中包含自定义Callout函数和允许 IRIS使用它们的启用代码。本章描述如何创建Callout库并在运行时访问它。
- Callout library 简介-描述如何创建和访问Callout library
- ZFEntry链接选项 - 提供了决定如何传递函数参数的链接选项的详细描述。
- 兼容语言和编译器-描述如何使用C以外的语言创建Callout库。
- Callout Library运行和运行函数-描述两个可选函数,可将其设置为在加载或卸载标注库时自动运行。
- 故障排除和错误处理-列出了一些应该避免的编码实践,并描述了处理UNIX信号处理错误的特殊函数。

0 0
0 65
文章
· 十二月 23, 2023 阅读大约需 3 分钟
第三章 使用$ZF(-100)运行程序或系统命令

第三章 使用$ZF(-100)运行程序或系统命令

$ZF(-100)函数允许 IRIS 进程调用可执行程序或主机操作系统的命令。这是唯一可以在没有特殊的Callout共享库的情况下使用的$ZF函数。

  • $ZF(-100)的语法和功能概述。
  • 程序执行-程序可以选择异步运行或在操作系统外壳中运行。
  • 记录命令和重定向输出——可选设置可以记录命令或重定向I/O
  • 添加%System_Callout:USE特权—使用$ZF(-100)需要此特权。

注意:$ZF(-100)取代了已弃用的函数$ZF(-1)$ZF(-2),在所有情况下都应优先使用。

0 0
0 73
文章
· 十二月 22, 2023 阅读大约需 3 分钟
第二章 $ZF Callout函数概述

第二章 $ZF Callout函数概述

IRIS $ZF系统功能是一套相关功能的容器。$ZF套件中的大多数函数都由函数调用的第一个参数标识,该参数将是一个负数,-100-3-6。例如,调用操作系统命令的函数具有$ZF(-100, <oscommand>)的形式,其中<oscommand>是包含要执行的命令的字符串。当讨论这个函数时,它将被称为$ZF(-100)。以同样的方式,其他函数将被称为$ZF(-3)$ZF(-6),只使用实际函数调用的第一个参数。也可以在不带负数参数的情况下调用$ZF()函数,在这种情况下,它调用名为iriszf的特殊Callout库中的函数。

0 0
0 48