用于业务逻辑接口的参数,DFHWBBLI
下面列出了用于业务逻辑接口的、前缀为 wbbl_ 的输入和输出参数的名称与描述。
参数摘要
| 语言 | 文件 |
|---|---|
| 汇编语言 | DFHWBBLD |
| C® | DFHWBBLH |
| COBOL | DFHWBBLO |
| PL/I | DFHWBBLL |
| 输入 | 输出 |
|---|---|
wbbl_client_address
wbbl_client_ipv6_address wbbl_client_address_length wbbl_client_ipv6_address_length wbbl_client_address_string wbbl_client_ipv6_address_string wbbl_converter_program_name wbbl_eyecatcher wbbl_header_length wbbl_header_offset wbbl_http_version_length wbbl_http_version_offset wbbl_indata_length wbbl_indata_offset wbbl_indata_ptr wbbl_length wbbl_method_length wbbl_method_offset wbbl_mode wbbl_prolog_size wbbl_resource_length wbbl_resource_offset wbbl_server_address wbbl_server_ipv6_address wbbl_server_program_name wbbl_ssl_keysize wbbl_status_size wbbl_user_token wbbl_user_data_length wbbl_vector_size wbbl_version |
wbbl_outdata_length
wbbl_outdata_offset wbbl_outdata_ptr |
通过兼容性接口 (调用 DHWBBLI) 支持为使用较低版本的 CICS 业务逻辑接口 (DFHWBA1) 而编写的程序。
参数
在将输入插入 COMMAREA 中前,必须将它清为二进制零。
- wbbl_eyecatcher
- (仅输入)
必须设置为字符串 > DFHWBBLIPARMS的 14 个字符的字段。
- wbbl_client_address
- (仅输入)
如果未指定 wbbl_client_ipv6_address,必须设置为客户机的二进制 IPv4 地址的全字 32 位字段。 wbbl_client_address 不支持 IPv6 地址。
如果 wbbl_client_address 中的值为非零,那么会使用该值,并会忽略 wbbl_client_ipv6_address 中的任何值。 因此,如果您正在使用 IPv6 寻址,那么必须清除 wbbl_client_address 中的内容,以便使用 wbbl_client_ipv6_address 中的值。
- wbbl_client_ipv6_address
- (仅输入)
正在使用 IPv6 寻址时,或正在使用 IPv4 寻址且未指定 wbbl_client_address 时,必须设置的 16 字节字段。 该字段支持 IPv4 和 IPv6 地址,并可设置为客户机的二进制 IPv6 地址或者客户机的 IPv6 格式的 IPv4 地址。 有关 IP 地址格式的更多信息,请参阅 IP 地址。
- wbbl_client_address_length
- (仅输入)
必须设置为 wbbl_client_address_string 的长度的 1 字节二进制字段。
- wbbl_client_ipv6_address_length
- (仅输入)
必须设置为 wbbl_client_ipv6_address_string 的长度的 1 字节二进制字段。
- wbbl_client_address_string
- (仅输入)
一个最多由 15 个字符组成的字符串,该字符串是 wbbl_client_address 的点分十进制表示,并在右端填充二进制零。 将 wbbl_client_ipv6_address_string(而不是 wbbl_client_address_string)用于所有的新程序。
- wbbl_client_ipv6_address_string
- (仅输入)
一个最多由 39 个字符组成的字符串,该字符串是 wbbl_client_ipv6_address 的冒号十六进制或点分十进制表示,并在右端填充二进制零。
- wbbl_converter_program_name
- (仅输入)
要用于转换器 DECODE 和 ENCODE 函数的程序的 8 字符名称。
- wbbl_header_length
- (仅输入)
必须包含与该请求相关联的 HTTP 头长度的全字二进制数。
- wbbl_header_offset
- (仅输入)
必须包含与该请求相关联的 HTTP 头的偏移量(从请求数据的开始处起算)的全字二进制数。
- wbbl_http_version_length
- (仅输入)
必须包含用于处理请求的 HTTP 协议的版本长度的全字二进制数。
- wbbl_http_version_offset
- (仅输入)
必须包含用于处理请求的 HTTP 协议的版本的偏移量的全字二进制数。
- wbbl_indata_length
- (仅输入)
必须设置为 wbbl_indata_ptr 或 wbbl_indata_offset找到的数据长度的全字二进制数。 如果分析器修改了数据长度值,那么修改部分会在此处反映出来。 如果请求不是 HTTP 请求,请不要设置该字段。
- wbbl_indata_offset
- (仅输入)
如果 wbbl_mode 是“O”或“D”,那么这是传递给应用程序的 HTTP 请求数据的偏移量 (从参数列表的开始处起算)。
- wbbl_indata_ptr
- (仅输入)
如果 wbbl_mode 是“P”,那么该字段就是传递给应用程序的 HTTP 请求数据的地址。
- wbbl_length
- (仅输入)
必须设置成为 BLI 参数列表的总长度的半字二进制数。
- wbbl_method_length
- (仅输入)
必须包含用于处理请求的 HTTP 方法的长度的全字二进制数。 方法为下列其中一项 :GET , PATCH , POST , HEAD , PUT , DELETE , LINK , UNLINK 或 REQUEUE。
- wbbl_method_offset
- (仅输入)
必须包含用于处理请求的 HTTP 方法的偏移量(从请求数据的开始处起算)的全字二进制数。 方法为下列其中一项 :GET , PATCH , POST , HEAD , PUT , DELETE , LINK , UNLINK 或 REQUEUE。
- wbbl_mode
- (仅输入)
表明 wbbl_indata 和 wbbl_outdata 寻址方式的单个字符。 必须将其设置为“P”以表明这些值都是指针,或设置为“O”以表明这些值是从参数列表的开始处起算的偏移量。
- wbbl_outdata_length
- (仅输入)
全字二进制字段, DFHWBBLI 在该字段中返回由 wbbl_outdata_ptr 或 wbbl_outdata_offset找到的响应数据的长度。
- wbbl_outdata_offset
- (仅输入)
如果 wbbl_mode 是“O”或“D”,那么这是全字,DFHWBBLI 在其中返回来自应用程序的响应数据的偏移量(从参数列表的开始处起算)。 该地址不一定要和 wbbl_indata_offset 相同。
- wbbl_outdata_ptr
- (仅输入)
如果 wbbl_mode 是“P”,那么该字段是全字地址,DFHWBBLI 在其中返回来自应用程序的响应数据的地址。 该地址不一定要和 wbbl_indata_ptr 相同。
- wbbl_prolog_size
- (仅输入)
必须设置为 56 的半字二进制数;即,wbbl_prolog 子结构的长度。
- wbbl_resource_length
- (仅输入)
一个全字二进制数,它必须包含被请求的 URI 资源的长度;即,URL 中第一个“
/”字符开始的 URL 非网络部分。 - wbbl_resource_offset
- (仅输入)
一个全字二进制数,它必须包含正请求的 URI 资源的偏移量(从请求数据的开始处起算);即,URL 中第一个“
/”字符开始的 URL 非网络部分。 - wbbl_response
- (仅输入)
DFHWBBLI 在其中返回响应代码的全字二进制字段。
- wbbl_server_address
- (仅输入)
如果未指定 wbbl_server_ipv6_address,必须设置为服务器的二进制 IPv4 地址的全字 32 位字段。 wbbl_server_address 不支持 IPv6 地址。
如果 wbbl_server_address 中的值为非零,那么会使用该值,并会忽略 wbbl_server_ipv6_address 中的任何值。 因此,如果您正在使用 IPv6 寻址,那么必须清除 wbbl_server_address 中的内容,以便使用 wbbl_server_ipv6_address 中的值。
- wbbl_server_ipv6_address
- (仅输入)
正在使用 IPv6 寻址时,或正在使用 IPv4 寻址且未指定 wbbl_server_address 时,必须设置的 16 字节字段。 该字段支持 IPv4 和 IPv6 地址,并可设置为服务器的二进制 IPv6 地址或者服务器的 IPv6 格式的 IPv4 地址。 有关 IP 地址格式的更多信息,请参阅 IP 地址。
- wbbl_server_program_name
- (仅输入)
要用于处理请求并生成响应的 CICS 应用程序的 8 字符名称。
- wbbl_ssl_keysize
- (仅输入)
加密密钥的大小,如果使用安全套接字层,那么该大小在 SSL 握手期间协商确定。 如果不使用 SSL,那么其值为零。
- wbbl_status_size
- (仅输入)
必须设置为 wbbl_status 子结构的长度的 1 字节二进制字段。
- wbbl_user_data_length
- (仅输入)
必须设置为实体主体长度的全字二进制数。 如果分析器修改了长度值,那么修改部分会在此处反映出来。 如果请求不是 HTTP 请求,请不要设置该字段。
- wbbl_user_token
- (仅输入)
一个 8 字符字段,DFHWBBLI 的调用者使用该字段可以传输标识客户机当前对话状态的数据。 通常将它设置为 URL 的 query-string 部分的前 8 个字符;即,问号(?)以后的所有数据。
- wbbl_vector_size
- (仅输入)
必须设置为 64(即,wbbl_vector 子结构的长度)的半字二进制数。
- wbbl_version
- (仅输入)
表明当前使用的 BLI 参数列表的版本的半字二进制数。 使用常量值 wbbl_current_version 来设置该值。
业务逻辑接口响应
- 400
- 某个转换器函数返回了带有 URP_CORRUPT_CLIENT_DATA 原因码的 URP_EXCEPTION 响应。 业务逻辑接口写异常跟踪项 (跟踪点 4556),并发出消息(DFHWB0120)。
- 403
- 对 wbbl_server_program_name 中指定的程序的 LINK 命令接收到 NOTAUTH 响应。 业务逻辑接口写异常跟踪项 (跟踪点 4556),并发出消息(DFHWB0120)。
- 404
- 针对 wbbl_server_program_name 中指定的程序的 LINK 命令接收到 PGMIDERR 响应。 业务逻辑接口写异常跟踪项 (跟踪点 4556),并发出消息(DFHWB0120)。
- 500
- 发生以下某种情况:
- 业务逻辑接口检测到异常终止。 根据异常终止的程序发出相应的消息。 对于在 wbbl_server_program_name 中指定的程序,消息为 DFHWB0125。 对于转换器的 Encode 函数,消息为 DFHWB0126。 对于转换器的 Encode 函数,消息为 DFHWB0127。 对于任何其他程序,消息为 DFHWB0128。 任何情况下,都会写入异常跟踪项(跟踪点 4557)。
- 对 wbbl_server_program_name 中指定的程序的 LINK 命令接收到 INVREQ 或 LENGERR 或意外响应。 业务逻辑接口写异常跟踪项 (跟踪点 4556),并发出消息(DFHWB0120)。
- 501
- 发生以下某种情况:
- Decode 返回了 URP_EXCEPTION 响应,并带有未定义的原因码。 业务逻辑接口写异常跟踪项 (跟踪点 455B),并发出消息(DFHWB0121)。
- Decode 返回了 URP_INVALID 响应。 业务逻辑接口写异常跟踪项 (跟踪点 455C),并发出消息(DFHWB0121)。
- Decode 返回了 URP_DISASTER 响应。 业务逻辑接口写异常跟踪项 (跟踪点 455D),并发出消息(DFHWB0121)。
- Decode 返回了未定义响应。 业务逻辑接口写异常跟踪项 (跟踪点 455E),并发出消息(DFHWB0121)。
- Encode 返回了 URP_EXCEPTION 响应,并带有未定义的原因码 业务逻辑接口写异常跟踪项 (跟踪点 455B),并发出消息(DFHWB0122)。
- Encode 返回了 URP_INVALID 响应。 业务逻辑接口写异常跟踪项 (跟踪点 455C),并发出消息(DFHWB0122)。
- Encode 返回了 URP_DISASTER 响应。 业务逻辑接口写异常跟踪项 (跟踪点 455D),并发出消息(DFHWB0122)。
- Encode 返回了未定义响应。 业务逻辑接口写异常跟踪项 (跟踪点 455E),并发出消息(DFHWB0122)。
- 503
- 发生以下某种情况:
- 针对 wbbl_server_program_name 中指定的程序的 LINK 命令接收到 TERMERR 响应。 业务逻辑接口写异常跟踪项 (跟踪点 4555),并发出消息(DFHWB0120)。
- 针对 wbbl_server_program_name 中指定的程序的 LINK 命令接收到 SYSIDERR 或 ROLLEDBACK 响应。 业务逻辑接口写异常跟踪项 (跟踪点 4556),并发出消息(DFHWB0120)。