偏移方式和指针方式
可以通过两种方式调用 CICS® 业务逻辑接口: 偏移方式和指针方式。
- 偏移方式
- 在偏移方式下,存在单个存储区域 ( 图 1 中的存储区域 1) 包含 DFHWBBLI 的 COMMAREA 和 CICS 应用程序的区域。 DFHWBBLI COMMAREA 中的字段 wbbl_indata_offset 包含了以存储器区域开始为起点的应用程序 COMMAREA 的偏移量。 这个存储器区域可以存储的最大数据量为 32K 字节。
在偏移方式中,转换器程序不能更改 DECODE_DATA_PTR 或 ENCODE_DATA_PTR 的值。
- 指针方式
- 在指针方式下,有两个独立的存储区域: 一个 ( 图 1 中的存储区域 1 ) 包含 DFHWBBLI 的 COMMAREA ,而另一个 (存储区域 2) 包含 CICS 应用程序的区域。 DFHWBBLI COMMAREA 中的字段
wbbl_indata_ptr 包含了应用程序 COMMAREA 的地址。
在指针方式中,转换器程序可以更改 DECODE_DATA_PTR 或 ENCODE_DATA_PTR 的值。

- 将 wbbl_mode 设置为“D”以指明偏移方式,wbbl_user_data_offset 所引用的 HTTP 请求的主体采用 ASCII 格式。 如果服务器程序使用任何 FORMFIELD API 命令,将需要此设置。
- wbbl_mode 设置为“P”时,表示指针方式
decode_volatile 或 encode_volatile 以确定方式:- 0 表示偏移方式
- 1 表示指针方式
调用 CICS 业务逻辑接口时,来自以下任何源的所有请求都使用偏移方式:
- 使用 IBM HTTP Server 的 Web 客户机。
- 使用本地网关功能的 Java™ 应用程序。
- 使用 CICS Transaction Gateway的 Web 客户机。