[z/OS]

用于 z/OS API 的优化本地适配器

WebSphere® Application Server for z/OS® 优化本地适配器受到下列各项的支持:一组 z/OS 本地语言可调用服务、应用程序编程接口 (API) 和 Java™ EE 连接器体系结构 (JCA)。

可通过以下本机编程语言来使用这些可调用服务:
  • Cobol
  • C/C++
  • PL/I
  • 高级汇编程序
每项可调用服务都具有 31 位版本和 64 位版本。对于 31 位 API 存根,命名约定为 BBOA1-;对于 64 位 API 调用者,命名约定为 BBGA1-。

如果参数列表位于菜单栏下,并且它按照 31 位约定(每个参数的指针都是 31 位地址)来传递参数,那么以 AMODE 64 方式运行的调用者 可以使用 AMODE 31 版本的 API。以 64 位运行的调用者必须采用 C、C++ 或汇编程序,并以 64 位寻址方式执行。从汇编程序应用程序使用 BBGA1* 64 位 API 时,需要格式 4 或 F4SA 的 64 位保存区域,优化本地适配器存根使用此保存区域来保存和复原调用者的寄存器。从 C 或 C++ 调用时,<Prod_FS_root>/util/zos/OLASamples/bboaapi.h 中的样本头将 64 位 API 定义为外部 OS_NOSTACK,这将确保使用正确的链接和保存区域约定来调用这些 API。

在此 API 文档中使用本地连接术语时,便引用了为了在 z/OS 系统上的外部地址空间与同一 z/OS 系统上的 WebSphere Application Server 之间进行通信而创建的跨内存链接。客户机地址空间必须在同一 z/OS 映像上运行。适配器 API 管理那些位于池中的与每个唯一注册的调用者相关联的本地连接。12 个字符的注册名称只能用于每个地址空间的一组连接池。对单个地址空间中的唯一注册数没有限制。这只受可用存储器数量限制。

注册

使用 BBOA1REG(对于 31 位调用者)和 BBGA1REG(对于 64 位调用者)API,您可以向本地 WebSphere Application Server for z/OS 守护程序组和服务器注册。BBOA1REG 和 BBGA1REG API 请求使用所指定的“registername”对本地 WebSphere Application Server 守护程序组和服务器分配和注册一组优化连接。

表 1. BBOA1REG(31 位调用者)和 BBGA1REG(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1REG 或 BBGA1REG

BBOA1REG ( daemongroupname , nodename , servername , registername , minconn , maxconn , registerflags , rc, rsn )

BBGA1REG ( daemongroupname , nodename , servername , registername , minconn , maxconn , registerflags , rc, rsn )

参数

daemongroupname(输入)

包含要连接的 WebSphere Application Server for z/OS 守护程序组的名称的入口变量或入口常量。守护程序组名必须与单元短名称相同,而不与守护程序作业名相同。

此入口变量或入口常量必须是正好由 8 个字符组成且以 null 结束的字符串,它必须由引用进行传递。WebSphere Application Server for z/OS 守护程序必须正在本地系统上运行并且已进行初始化。

nodename(输入)

一个入口变量或入口常量,它包含要连接的 WebSphere Application Server for z/OS 节点的名称(短名称)。此入口变量或常量必须由引用进行传递。WebSphere Application Server z/OS 服务器必须正在本地系统上运行并且已进行初始化。该参数必须是正好由 8 个字符组成的用空格填充的字符串。

servername(输入)

一个入口变量或入口常量,它包含要连接的 WebSphere Application Server for z/OS 服务器的名称(短名称)。此入口变量或常量必须由引用进行传递。WebSphere Application Server z/OS 服务器必须正在本地系统上运行并且已进行初始化。该参数必须是正好由 8 个字符组成的用空格填充的字符串。

registername(输入)

一个入口变量或入口常量,它包含要用于注册一组本地连接的名称。以后的调用需要此名称以标识要使用的连接池。该参数必须是正好由 12 个字符组成的用空格填充的字符串,并且无法用于当前地址空间。

minconn(输入)
包含要为此注册分配的初始最小连接数的整数。适配器尝试保留注册期间与相关服务器的此连接数。
要点: 即使 MINCONN 指定为零 (0),至少也分配了一个要与目标服务器绑定的连接。指定 0 与指定 1 的结果相同。
maxconn(输入)

包含要为此注册分配的最大连接数的整数。如果最小数量的连接全在使用中,那么在“连接获取”请求期间,适配器会尝试将本地连接池扩展到此数目。

registerflags(输入)
包含注册标志的 32 位标志单词。
  • reg_flag_trans - 30 位

    如果在进行了此注册的连接上支持事务恢复,那么包含 1,如果不支持事务恢复,那么包含 0(零)。

    启用了此事务参数时,适配器 API 将尝试向 z/OS 资源恢复服务 (RRS) 注册,并且会在 WebSphere Application Server 和 API 开发程序的环境之间创建支持两阶段落实的全局事务。

    从 V8.5.0.2 开始,如果您正在 IMS™ 从属区域中运行并将此标志设置为 1,请确保您正在 RRS=YES 的 IMS 环境中运行,或者已将节点级别的环境变量 ola_rrs_context_propagate 添加至配置并且将其设置为 true(或者 1)。在 IMS 下,当在 WebSphere Application Server for z/OS EJB 容器中传播和声明“调用或发送请求 WOLA”API 调用时,RRS 上下文会影响线程。

    避免故障 避免故障: 如果您需要向配置设置添加 ola_rrs_context_propagate 变量,或者需要将此变量的设置更改为 true,那么在进行此配置更改之后,您必须重新启动服务器。gotcha
  • reg_flag_W2Cprop - 31 位或 64 位

    reg_flag_W2Cprop 将控制 WebSphere Application Server 到 CICS® 的出站事务安全性传播。

  • reg_flag_C2Wprop - 29 位
    在调用任务时将标识从 CICS 传播到 WebSphere Application Server。对于从 CICS 到 WebSphere Application Server 的入站事务,注册标志 reg_flag_C2Wprop 控制用于确定标识的方式。当启用此位时,在 WebSphere Application Server 服务器授权过程中使用 CICS 应用程序任务身份。当关闭此位时,将使用 CICS 区域身份。
    注意: 您必须为要请求的 CICS 应用程序级别安全性启用 WebSphere Application Server。通过管理控制台将 WebSphere 环境变量 ola_cicsuser_identity_propagate 设置为 1 以设置此类型的安全性传播。
  • reg_flag_trcmod - 0 位

    如果您想要为所请求的注册修改优化本地适配器跟踪设置,请设置 reg_flag_trcmod。如果您不设置此标志,那么不会对跟踪设置进行更改,而是使用系统缺省值或者使用预定义的适用于注册名称或作业名的跟踪设置。

  • reg_flag_trcmore - 1 位以及 reg_flag_trcsome - 2 位

    在 reg_flag_trcmod 设置为 1 的情况下,如果您想要对注册进行详细跟踪或者粗级别跟踪,请设置 reg_flag_trcmore 或 reg_flag_trcsome 以指定跟踪设置。让它们都设置为“off”并将 reg_flag_trcmod 设置为 1 将不会强制对注册进行跟踪,无论如何设置了预定义设置还是缺省值都是如此。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 针对服务器最大连接数(可使用 WebSphere Application Server 管理控制台进行配置)来验证所请求的最小连接数。最小连接数 (minconn) 值 3 意味着在注册调用期间将保留 3 个连接。如果在给定的时间请求了三个以上的连接,那么连接池可增加到最大连接 (maxconn) 值。如果服务器的所有连接数达到了允许的最大值,那么即使尚未达到 maxconn 值,也将拒绝此服务器所有后续的“连接获取 API”请求。
    要点: 设置最小连接值时须谨慎。除了在特定实例中之外,不建议使用很大的设置,因为将对每个连接保留 WebSphere Application Server 控制区域中的资源。
  • 可在同一地址空间、线程或客户信息控制系统 (CICS) 任务中向注册 API 发出多个调用,但是它们无法共享同一个注册名称。注册名称必须是唯一名称。
  • 将此事务参数设置为 1 将导致此注册的所有连接在运行时带有事务性。这意味着从当前地址空间连接了 RRS。请参阅有关“传播事务”的章节以了解有关此需求和设置的更多详细信息。仅支持 WebSphere Application Server 与 CICS 之间的事务性。在注册调用期间,从其他环境请求 transactional(1) 将导致产生警告,将忽略此标志并继续进行处理。
  • 使用注销 API 调用来移除此注册并释放与其关联的连接池。
  • 发出注册调用的地址空间终止时,注册也会自动终止并且释放连接。
返回码和原因码:
表 2. BBOA1REG 和 BBGA1REG API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
  4 在适配器不支持全局事务的环境中,设置事务注册标志为 1。 将忽略此设置并继续进行处理。
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 您必须注销此名称,然后才能对其调用注册 API。
  10 最大连接数参数超出了允许用于任何单个注册的最大连接数。 拒绝注册 API 请求。请确保目标服务器的最大优化本地适配器值够大,能够满足此请求和其他所有请求。有关 WAS_DAEMON_ONLY_adapter_max_conn 环境变量的更多信息,请参阅主题“优化本地适配器定制属性”和主题“使服务器环境可使用优化本地适配器”。
  12 指定的最小连接数参数大于最大连接数参数。 确保最小连接数设置小于或等于最大设置。
  14 尝试创建注册时,共享内存不足。 增加为优化本地适配器分配的共享内存或发出注销调用以减少资源的使用。
  21 尝试与本地 WebSphere Application Server 联系时发生错误。 如果您将 reg_flag_C2Wprop 位(29 位)设置为 1,请确保 WebSphere 环境变量 ola_cicsuser_identity_propagate 也设置为 1。
  25 无法初始化事务管理器。 请致电 IBM® 技术支持以获取帮助。
  70 尝试创建连接时,共享内存不足。 增加为优化本地适配器分配的共享内存。
  74 输入注册名称包含空值。 在启动“注册”API 之前,请使用空格来填充注册名称。
12 4 查找 BBOACALL 模块时发生错误。 请确保 STEPLIB 和 LNKLST 中提供了其中包含 WebSphere Application Server BBOACALL 模块的数据集。
  10 找不到所选择的 WebSphere Application Server 守护程序组。 请确保已启动 WebSphere Application Server 守护程序和目标服务器,确认优化本地适配器支持处于活动状态,然后重试。
  14 未授权用户标识访问所请求的 WebSphere Application Server 请确保已授权用户标识使用所请求的 WebSphere Application Server 的 CBIND SAF 类。
  16 找不到节点名或服务器名称。 确保传递的节点名和服务器名称参数有效且服务器处于活动状态。
  23 对标记进行命名时发生错误。 请致电 IBM 技术支持以获取帮助。
  24 建立初始 WebSphere Application Server 本地通信连接时发生错误。 请参阅 WebSphere Application Server 区域日志以了解有关本地通信连接调用的详细信息。
  28 使用此名称标识的注册无效。 指定的注册名称已被注册,但是缺少 RGE。请与 IBM 技术支持联系并报告错误。或者调用注销 API,然后再次尝试调用注册 API。
  30 运行守护程序组时 WAS_DAEMON_ONLY_enable_adapter 属性未设置为 1。 通过 WebSphere Application Server 管理控制台添加变量:WAS_DAEMON_ONLY_enable_adapter=1。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  68 与共享内存的连接失败。 请致电 IBM 技术支持以获取帮助。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

注销

使用 BBOA1URG(对于 31 位调用者)和 BBGA1URG(对于 64 位调用者)API 从本地 WebSphere Application Server for z/OS 守护程序组和服务器注销。
表 3. BB0A1URG API(31 位调用者)和 BBGA1URG(64 位调用者)语法. 此 API 请求使用指定的注册名称释放与本地 WebSphere Application Server 守护程序组和服务器的一组优化连接。
API 语法
BBOA1URG 或 BBGA1URG

BBOA1URG (registername, unregflags, rc, rsn)

BBGA1URG (registername, unregflags, rc, rsn)

参数:

registername(输入)

一个入口变量或入口常量,它包含要用于注销一组本地连接的名称。此参数必须正好为 12 个字符,使用空格填充并与 BBOA1REG 上使用的名称相同。

unregisterflags(输入)
一个包含注销标志的 32 位标志单词。
  • 已保留 - 0-30 位
  • 强制 (0|1) - 31 位或 64 位

    如果应强制实施注销请求,那么包含 1。缺省情况下,如果所有连接都返回到连接池,那么注销请求完成。如果所有的连接未返回到该池,那么将有一条警告消息返回给调用者。当最后的连接已返回到池时,便完成了注销过程。强制位设置为 1 时,可以发出另一个注销请求,这将强制完成注销过程,并且该注册的所有其余连接句柄都会失效。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 如果没有调用注销 API,但是执行注册调用的地址空间终止,那么自动执行注销调用,并释放连接。
  • 进行注销调用时,只有当此次注册中处于活动状态的所有连接句柄都返回到使用 BBOA1CNR API 的连接池时,这些句柄才无效。要强制清除连接句柄,必须发出另一个注销调用并指定强制标志。这将使所有仍有效的连接句柄失效。
返回码和原因码:
表 4. BBOA1URG 和 BBGA1URG API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
  66 将延迟注销调用,直到所有的连接都返回到池为止。 当最后一个连接返回到空闲池时,注销完成。
8 - 错误 - 请查看原因码  
  8 注册标记名称不存在。 您必须注册此名称,然后才能对其调用“注销”API。
  64 在发出正常注销之前,无法指定强制选项。 在不指定强制选项的情况下调用注销 API。
  76 由于服务器不再运行,所以与服务器通信的尝试失败。 启动服务器,然后再次尝试进行通信。
  82 已尝试注销此注册。 等待完成前一个注销请求,或者附带 force 选项重新发出此注销请求。
  96 在信息管理系统 (IMS) 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
12 34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

连接获取

此 API 请求返回来自使用所选择的注册名称创建的池中的可用连接。
表 5. BBOA1CNG(31 位调用者)和 BBGA1CNG(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1CNG 或 BBGA1CNG

BBOA1CNG ( registername, connectionhandle, waittime, rc, rsn )

BBGA1CNG ( registername, connectionhandle, waittime, rc, rsn )

参数:

registername(输入)

一个入口变量或入口常量,它包含要用于查找从中检索连接的连接池的名称。该参数必须是正好由 12 个字符组成的用空格填充的字符串。

connectionhandle(输出)

在以后请求此连接上的操作时必须传递的 12 个字节的连接句柄。

waittime(输入)

包含在返回连接不可用的原因码之前等待连接完成的秒数的整数。值 0 意味着没有等待时间,API 将无限期等待。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用“连接获取 API”之前,确保使用匹配的名称在当前地址空间中成功完成了注册 (BBOA1REG) 调用。
返回码和原因码:
表 6. BBOA1CNG 和 BBGA1CNG API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记不存在。 尝试使用连接获取 API 调用此名称之前,确保您已注册了此名称。
  10 连接不可用。等待时间超时,无法获取连接请求。 应用程序行为改变。等待,然后重试,或者异常终止此连接。另一选择是增加注册 API 调用上的最大连接数设置。
  24 注册调用成功后,从池中获取连接时发生错误。 验证服务器是否已启动。如果服务器未运行,请重新启动服务器,然后再次尝试该 API 请求。
  28 已找到注册,但它处于不活动状态。  
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

连接释放

“连接释放”API 请求将连接返回到从其中检索到该连接的池,并使其可供另一个请求者使用。
表 7. BBOA1CNR(31 位调用者)和 BBGA1CNR(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1CNR 或 BBGA1CNR

BBOA1CNR ( connectionhandle, rc, rsn )

BBGA1CNR ( connectionhandle, rc, rsn )

参数:

connectionhandle(输入)

12 个字节的连接句柄,用于指示先前已获得、但是要释放回连接池的连接。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述调用失败原因的整数原因码。

使用说明
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 在使用“连接释放”API 之前,请确保在当前地址空间中使用相匹配的名称成功完成注册(BBOA1REG 或 BBGA1REG API)调用,并成功完成“连接获取”(BBOA1CNG 或 BBGA1CNG)调用以获取现在要释放的连接。
表 8. BBOA1CNR 和 BBGA1CNR API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 找不到 WebSphere Application Server 守护程序组和服务器。已清除与此连接相关的任何资源。
8 - 错误 - 请查看原因码  
  36 连接状态无效。 用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
12 14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

发送请求

这些 API 将请求发送到本地 WebSphere Application Server 进行处理。
表 9. BBOA1SRQ API(31 位调用者)和 BBGA1SRQ(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1SRQ 或 BBGA1SRQ

BBOA1SRQ ( connectionhandle, requesttype, requestservicename, requestservicenamel, requestdata, requestdatalen, async(0|1), responsedatalen, rc, rsn )

BBGA1SRQ ( connectionhandle, requesttype, requestservicename, requestservicenamel, requestdata, requestdatalen, async(0|1), responsedatalen, rc, rsn )

参数:

connectionhandle(输入)

要用于此请求的 12 个字节的连接句柄。

requesttype(输入)

一个整数,其中包含请求类型,用于指示要处理的工作请求的类型。受支持的类型值:1 = 本地 EJB 工作请求,2 = 远程 EJB 工作请求。

requestservicename(输入)

包含要调用的服务名称的最多 256 个字节的 EBCDIC 字符串。对于类型 1 (EJB) 和类型 2(远程 EJB),这是目标的 JNDI 主名称。

requestservicenamel(输入)

一个整数,其中包含要启动的服务名称的长度;如果服务名称以 null 结束,那么此整数为 0(零)。

requestdata(输入)

指向要发送的请求数据开始处的地址的 31 位指针或 64 位指针。

requestdatalen(输入)

包含要发送的数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

async(0|1)(输入)

一个整数值,当设置为 1 时,表明即使可能尚不知道响应的长度,调用者也希望立即返回控制。对于 async(0),当前线程正在请求等待从 WebSphere Application Server 返回响应,并且响应长度在 responsedatalen 输出参数中返回。

responsedatalen(输出)

包含响应长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。调用者可以使用此长度获取存储,然后再调用获取数据 API 来将其复制到存储中。async 设置为 1 时,表示调用者希望立即返回控制,如果尚未收到响应,那么全部都将设置为 0xFF。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用“发送请求 API”之前,确保使用匹配的名称在当前地址空间中成功完成了注册 (BBOA1REG) 调用。
返回码和原因码:
表 10. BBOA1SRQ 和 BBGA1SRQ API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  14 保存消息时发生内存不足的情况。 可用内存不足,发送请求无法处理消息。当前地址空间的专用存储空间不足。
  16 请求服务名称长度无效。 更正程序,然后重试。
  18 请求长度超出了系统限制。 消息大小大于 WebSphere Application Server 大小可以支持的大小。请验证该大小是否有效。如果大小有效,请确保 WebSphere Application Server 的大小足够容纳消息。
  26 无法开始全局事务。  
  32 API 呼叫请求类型无效。 请求类型无效。请更正程序,然后重试该调用。
  34 找不到目标服务。 请确保在 WebSphere Application Server 的目标服务器中已安装并启动其中包含目标企业 Bean 的应用程序。
  36 连接状态无效。 用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于请求的客户机连接句柄无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  44 在目标企业 Bean 中发生异常或意外情况。 请参阅 WebSphere Application Server 日志以查看异常数据。
  46 在本地通信发送请求调用中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
  98 无法访问所提供请求缓冲区的开头。 请确保所提供请求缓冲区的地址和长度正确。
  100 无法访问所提供请求缓冲区的结尾。 请确保所提供请求缓冲区的地址和长度正确。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态。重试查找 WebSphere Application Server 守护程序组和服务器。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

发送响应

此 API 将对请求的响应发送回本地 WebSphere Application Server
表 11. BBOA1SRP API(31 位调用者)和 BBGA1SRP(64 位调用者)语法. 在“参数”部分说明了此语法。
API 语法
BBOA1SRP 或 BBGA1SRP

BBOA1SRP ( connectionhandle, responsedata, responsedatalen, rc, rsn )

BBGA1SRP ( connectionhandle, responsedata, responsedatalen, rc, rsn )

参数:

connectionhandle(输入)

要用于此响应的 12 个字节的连接句柄。

responsedata(输入)

指向要发送的响应数据开始处的地址的 31 位指针或 64 位指针。

responsedatalen(输入)

包含要发送的数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用“发送响应”API 之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGA1REG API)调用。
  • 请确保已成功完成“连接获取”(BBOA1CNG 或 BBGA1CNG)调用,并且将句柄作为此调用的输入来提供。
  • 请确保已成功发出“接收任何请求”、“接收特定请求”或“主机 API”调用,并且返回了连接句柄的请求数据。连接必须处于“发送响应”API 有效的状态。
返回码和原因码:
表 12. BBOA1SRP 和 BBGA1SRP API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  14 保存消息时发生内存不足的情况。 可用内存不足,发送响应无法处理消息。当前地址空间的专用存储空间不足。
  18 响应长度超出了系统限制。 消息大小大于 WebSphere Application Server 大小可以支持的大小。请验证该大小是否有效。如果大小有效,请确保 WebSphere Application Server 的大小足够容纳消息。
  34 找不到目标服务。 请确保在目标 WebSphere Application Server 上已安装并启动包含目标 EJB 的应用程序。
  36 连接状态无效。 用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  46 在本地通信发送请求调用中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
  102 无法访问所提供响应缓冲区的开头。 请确保所提供响应缓冲区的地址和长度正确。
  104 无法访问所提供响应缓冲区的结尾。 请确保所提供响应缓冲区的地址和长度正确。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

发送响应异常

此 API 将异常响应数据发送回本地 WebSphere Application Server 中的 JCA 调用者。响应是 ResourceAdapterException,同时返回指定的异常响应数据。

表 13. BBOA1SRX(31 位调用者)和 BBGA1SRX(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1SRX 或 BBGA1SRX

BBOA1SRX ( connectionhandle, excresponsedata, exresponsedatalen, rc, rsn )

BBGA1SRX ( connectionhandle, excresponsedata, exresponsedatalen, rc, rsn )

参数:

connectionhandle(输入)

用于响应的 12 个字节的连接句柄。

excresponsedata(输入)

指定一个指向要发送的异常响应数据开始处的地址的 31 位指针或 64 位指针。

excresponsedatalen(输入)

指定用于表示要发送的异常响应数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。异常响应数据为描述错误的 EBCDIC 字符串。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用“发送响应”调用之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGAREG API)调用。
  • 请确保已成功完成“连接获取”(BBOA1CNG 或 BBGA1CNG API)调用,并且将此调用的句柄作为此调用的输入来提供。
  • 确保已成功发出“接收任何请求”、“接收特定请求”或“主机 API”调用,并且返回了连接句柄的请求数据。连接必须处于“发送响应”API 和“发送响应异常”API 都有效的状态。
返回码和原因码:
表 14. BBOA1SRX 和 BBGA1SRX API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  10 连接句柄处于已释放或无效状态。 请确保传递了有效的连接句柄。
  14 保存消息时发生内存不足的情况。 可用内存不足,发送响应异常无法处理消息。当前地址空间的专用存储空间不足。
  16 一个或多个参数无效。 请确认所有参数都有效,然后重试该调用。
  18 响应长度超出了系统限制。 消息大小大于 WebSphere Application Server 大小可以支持的大小。请验证该大小是否有效。如果大小有效,请确保 WebSphere Application Server 的大小足够容纳消息。
  20 一个或多个参数无效。 请确认所有参数都有效,然后重试该调用。
  28 与连接句柄相关联的注册不再处于活动状态。 发出“连接获取”和“发送请求”调用之前,请再次使用注册名称来调用注册。
  36 连接状态无效。 用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  46 在本地通信发送请求调用中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
  102 无法访问所提供响应缓冲区的开头。 请确保所提供响应缓冲区的地址和长度正确。
  104 无法访问所提供响应缓冲区的结尾。 请确保所提供响应缓冲区的地址和长度正确。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

接收任何请求

通过任何连接接收来自本地 WebSphere Application Server 的请求。接收传递的注册名称的池中所有可用连接上的请求及相关数据。将请求数据长度作为输出参数返回。 连接句柄也是返回到调用者的输出参数。具有返回的连接句柄的“获取数据 API”调用返回收到的消息数据。

表 15. BBOA1RCA API(31 位调用者)和 BBGA1RCA(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1RCA 或 BBGA1RCA

BBOA1RCA ( registername, connectionhandle, requestservicename, requestservicenamel, requestdatalen, waittime, rc, rsn )

BBGA1RCA ( registername, connectionhandle, requestservicename, requestservicenamel, requestdatalen, waittime, rc, rsn )

参数:

registername(输入)

一个入口变量或入口常量,它包含要用于查找从中检索连接的连接池的名称。该参数必须是正好由 12 个字符组成的用空格填充的字符串。

connectionhandle(输出)

已返回并且在以后请求此连接上的操作时必须传递的 12 个字节的连接句柄。

requestservicename(输入/输出)

包含服务名称的最多 256 个字节的 EBCDIC 字符串。这是 WebSphere Application Server 应用程序在 InteractionSpec 上指定的目标服务的名称。值 * 表明当前注册名称下具有的所有服务名称的接收请求。

requestservicenamel(输入/输出)

一个整数,其中包含要启动的服务名称的长度;如果服务名称以 null 结束,那么此整数为 0

requestdatalen(输出)

将返回包含要接收的数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

waittime(输入)

包含在返回连接不可用的原因码之前等待连接完成的秒数的整数。值 0 表明没有等待时间,API 将无限期等待。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用此 API 之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGA1REG API)调用。
返回码和原因码:
表 16. BBOA1RCA 和 BBGA1RCA API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  11 WebSphere Application Server 发送了错误的数据  
  16 请求服务名称长度无效。 请更正程序,然后重试该调用。
  19 本地通信现有数据故障  
  21 本地通信预览数据故障  
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄确定无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  46 在本地通信发送请求调用中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  76 由于服务器不再运行,所以与服务器通信的尝试失败。 启动服务器,然后再次尝试进行通信。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  24 注册调用成功后,从池中获取连接时发生错误。 验证服务器是否已启动。如果服务器尚未启动,请重新启动服务器,然后再次尝试该 API 请求。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  44 服务调用的 CP 构建错误  
  46 服务调用的 CP 获取错误  
  48 服务调用的 CP 释放错误  
  60 无法获取 SRVQ 锁定  
  62 无法对 SRVQ 锁定进行解锁  
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

接收特定请求

通过特定连接接收来自本地 WebSphere Application Server 的请求。接收提供的输入连接句柄的请求和相关数据。 返回请求数据长度。具有返回的连接句柄的“获取数据 API”调用返回收到的消息数据。
表 17. BBOA1RCS(31 位调用者)和 BBGA1RCS(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1RCS 或 BBGA1RCS

BBOA1RCS ( connectionhandle, requestservicename, requestservicenamel, requestdatalen, async(0|1), rc, rsn )

BBGA1RCS ( connectionhandle, requestservicename, requestservicenamel, requestdatalen, async(0|1), rc, rsn )

参数:

connectionhandle(输入)

要用于此接收请求的 12 个字节的连接句柄。

requestservicename(输入/输出)

包含服务名称的最多 256 个字节的 EBCDIC 字符串。这是 WebSphere Application Server 应用程序在 InteractionSpec 上指定的目标服务的名称。值 * 表明设置为当前注册名称下具有的所有服务名称的服务器。

requestservicenamel(输入/输出)

一个整数,其中包含要启动的服务名称的长度;如果服务名称以 null 结束,那么此整数为 0

requestdatalen(输出)

将返回包含所接收到的请求数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。调用者可以使用此长度获取存储,然后再调用获取数据 API 来将其复制到存储中。当 async 设置为 1 时,表明调用者希望立即返回控制,如果尚未接收到请求数据,那么该参数将设置为 all 0xFFs。在这种情况下,必须再次调用 API 来检索入站请求。

async(0|1)(输入)

一个整数值,当设置为 1 时,表明即使可能尚不知道请求的长度,调用者也希望立即返回控制。当 async 设置为 0 时,此调用将等待接收来自 WebSphere Application Server 的请求。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用此 API 之前,确保使用匹配的名称在当前地址空间中成功完成了注册 (BBOA1REG API) 调用。
返回码和原因码:
表 18. BBOA1RCS 和 BBGA1RCS API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  10 连接句柄处于已释放状态或不正确的状态。 请确保传递了有效的连接句柄。
  11 WebSphere Application Server 发送了错误的数据  
  16 请求服务名称长度无效。 请更正程序,然后重试该调用。
  19 本地通信现有数据故障  
  21 本地通信预览数据故障  
  28 与连接句柄相关联的注册不再处于活动状态。 调用连接获取并接收特定请求之前,请再次调用注册名称。
  36 连接状态无效。 用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  46 在本地通信发送请求调用中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  76 由于服务器不再运行,所以与服务器通信的尝试失败。 启动服务器,然后再次尝试进行通信。
  78 发生了内部错误,导致该连接选择一个不是此连接所处理事务的一部分的请求。 请将此连接返回到连接池。如果问题仍然存在,请与 IBM 技术支持联系。
  80 此连接上处于活动状态的事务已超时,但是未能复位连接状态以便处理另一个请求。 请将此连接返回到连接池。如果问题仍然存在,请与 IBM 技术支持联系。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  44 服务调用的 CP 构建错误  
  46 服务调用的 CP 获取错误  
  48 服务调用的 CP 释放错误  
  60 无法获取 SRVQ 锁定  
  62 无法对 SRVQ 锁定进行解锁  
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

接收响应长度

接收响应长度用来检索之前发送的请求调用中的响应数据的长度。
表 19. BBOA1RCL API(31 位调用者)和 BBGA1RCL(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1RCL 或 BBGA1RCL

BBOA1RCL ( connectionhandle, async(0|1), responsedatalen, rc, rsn )

BBGA1RCL ( connectionhandle, async(0|1), responsedatalen, rc, rsn )

参数:

connectionhandle(输入)

要用于此请求的 12 个字节的连接句柄。

async(输入)

一个整数值,当设置为 1 时,表明即使可能不知道响应的长度,调用者也希望立即返回控制。当 async 设置为 0 时,此调用将等待从 WebSphere Application Server 返回响应并在 responsedatalen 参数值中提供响应长度。

responsedatalen(输出)

将返回包含所接收到的数据长度的 32 位无符号值(31 位方式)和 64 位无符号值(64 位方式)。调用者可以使用此长度获取存储,然后再调用获取数据 API 来将其复制到存储中。如果 async 为 1,并且尚未收到响应数据,那么可能全部都会作为 FF 返回。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用此 API 之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGA1REG API)调用。
  • 请确保已成功完成“连接获取”(BBOA1CNG 或 BBGA1CNG API)调用,并且将句柄作为此调用的输入来提供。
  • 在进行此调用之前,请确保已成功完成“发送请求”(BBOA1SRQ 或 BBGA1SRQ API)调用。
返回码和原因码:
表 20. BBOA1RCL 和 BBGA1RCL API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  11 WebSphere Application Server 发送了错误的数据。  
  19 本地通信现有数据故障  
  21 本地通信预览数据故障  
  34 找不到目标服务。 请确保在目标 WebSphere Application Server 上已安装并启动包含目标企业 Bean 的应用程序。
  36 连接状态无效。 已确定用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄确定无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

获取消息数据

此 API 用于复制收到的消息数据。从此调用返回时,将从适配器消息高速缓存移除此消息。
表 21. BBOA1GET(31 位调用者)和 BBGA1GET(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1GET 或 BBGA1GET

BBOA1GET ( connectionhandle, msgdata, msgdatalen, rc, rsn, rv )

BBGA1GET ( connectionhandle, msgdata, msgdatalen, rc, rsn, rv )

参数:

connectionhandle(输入)

要用于此请求的 12 个字节的连接句柄。

msgdata(输入)

指向要复制到的数据区域开始处的地址的 31 位指针或 64 位指针。该参数指向的存储器必须位于调用者可写入的键中。

msgdatalen(输入)

包含要复制的数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

rv(输出)

包含此请求的上下文缓冲区大小的 32 位整数返回值。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用“发送请求”API 之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGA1REG API)调用。
  • 请确保已成功完成“连接获取”(BBOA1CNG 或 BBGA1CNG API)调用,并且将句柄作为此调用的输入来提供。
  • 如果 API 调用者输入 msgdatalen 参数大于实际的消息响应,那么返回码将包含 0,并且会将实际的消息长度提供给返回值。
  • 要点: 获取消息数据调用返回到调用者之后,消息数据不再存在,连接将返回到可用于其他发送或接收请求调用的状态。返回出错的获取消息数据或接收响应长度的后续调用。
返回码和原因码:
表 22. BBOA1GET 和 BBGA1GET API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  36 连接状态无效。 已确定用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄确定无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  48 在本地通信读请求中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  50 WebSphere Application Server 的连接已终止。 请检查 WebSphere Application Server 日志以确定错误。
  72 响应长度输入参数的大小不足以包含响应消息。 只能返回部分消息。消息的其余部分都被废弃。请参考返回值以获取消息响应的大小。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
  98 无法访问所提供请求缓冲区的开头。 请确保所提供请求缓冲区的地址和长度正确。
  100 无法访问所提供请求缓冲区的结尾。 请确保所提供请求缓冲区的地址和长度正确。
  102 无法访问所提供响应缓冲区的开头。 请确保所提供响应缓冲区的地址和长度正确。
  104 无法访问所提供响应缓冲区的结尾。 请确保所提供响应缓冲区的地址和长度正确。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

调用

此 API 使用其他底层的原语 API 函数来调用本地 WebSphere Application Server 中的方法。它旨在用于预先知道响应输出区最大大小的情况中。
表 23. BBOA1INV(31 位调用者)和 BBGA1INV(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1INV 或 BBGA1INV

BBOA1INV ( registername, requesttype, requestservicename, requestservicenamel, requestdata, requestdatalen, responsedata, responsedatalen, waittime, rc, rsn, rv )

BBGA1INV ( registername, requesttype, requestservicename, requestservicenamel, requestdata, requestdatalen, responsedata, responsedatalen, waittime, rc, rsn, rv )

参数:

registername(输入)

一个入口变量或入口常量,它包含要用于查找从中检索此调用连接的连接池的名称。该参数必须是正好由 12 个字符组成的用空格填充的字符串。

requesttype(输入)

一个整数,其中包含请求类型,用于指示要处理的工作请求的类型。受支持的类型值:1 = 本地 EJB 工作请求,2 = 远程 EJB 工作请求。

requestservicename(输入)

包含要调用的服务名称的最多 256 个字节的 EBCDIC 字符串。对于类型 1 (EJB),这是目标的 JNDI 主名称。

requestservicenamel(输入)

一个整数,其中包含要启动的服务名称的长度;如果服务名称以 null 结束,那么此整数为 0

requestdata(输入)

指向要发送的请求数据开始处的地址的 31 位指针或 64 位指针。

requestdatalen(输入)

包含要发送的数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

responsedata(输入)

指向要复制到的响应数据区域开始处的地址的 31 位指针或 64 位指针。该参数指向的存储器必须位于调用者可写入的键中。

responsedatalen(输入)

包含要发送的数据长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

waittime(输入)

包含在返回连接不可用的原因码之前等待连接完成的秒数的整数。值 0(零)表明没有超时,此 API 将无限期等待。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

rv(输出)

包含已接收到并且已复制到调用者响应区域的消息数据大小的 32 位整数返回值。

使用说明:
  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用“发送请求”API 之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGA1REG API)调用。
  • 如果 API 调用者输入 responsedatalen 参数大于实际的消息响应,那么返回码将包含 0(零),并且将在返回值中提供实际的消息长度。
返回码和原因码:
表 24. BBOA1INV 和 BBGA1INV API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  10 连接不可用。等待时间已到期,未能获得连接请求。 应用程序行为改变。等待并重试或接受此失败的“调用 API”调用。另一选择是增加注册 API 调用上的最大连接数设置。
  11 WebSphere Application Server 发送了错误的数据。  
  14 保存消息时发生内存不足的情况。 可用内存不足,调用无法处理消息。当前地址空间的专用存储空间不足。
  16 请求服务名称长度无效。 请更正程序,然后重试该调用。
  18 响应长度超出了系统限制。 消息大小大于 WebSphere Application Server 大小可以支持的大小。请验证该大小是否有效。如果大小有效,请确保 WebSphere Application Server 的大小足够容纳消息。
  19 本地通信现有数据故障。  
  21 本地通信预览数据故障。  
24 注册调用成功后,从池中获取连接时发生错误。 验证服务器是否已启动。如果服务器未运行,请重新启动服务器,然后再次尝试该 API 请求。
  26 无法开始全局事务。  
  28 已找到注册,但它处于不活动状态。  
  32 API 调用上的请求类型无效。 请求类型参数无效。请更正程序,然后重试该调用。
  34 找不到目标服务。 请确保在目标 WebSphere Application Server 上已安装并启动包含目标企业 Bean 的应用程序。
  36 连接状态无效。 已确定用于此请求的连接句柄处于错误状态。请参阅 API 文档以获取有关连接状态的规则。
  38 客户机连接句柄无效。 用于此请求的客户机连接句柄确定无效。请参阅 API 文档以获取有关客户机连接句柄的信息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  44 在目标企业 Bean 中发生异常或意外情况。 请参阅 WebSphere Application Server 日志以查看异常数据。
  46 在本地通信发送请求中发生错误。 请参阅 WebSphere Application Server 日志以确定错误。
  48 在本地通信读请求中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  50 WebSphere Application Server 的连接已终止。 请检查 WebSphere Application Server 以确定错误。
  72 响应长度输入参数的大小不足以包含响应消息。 只能返回部分消息。消息的其余部分都被废弃。请参考返回值以获取消息响应的大小。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
  98 无法访问所提供请求缓冲区的开头。 请确保所提供请求缓冲区的地址和长度正确。
  100 无法访问所提供请求缓冲区的结尾。 请确保所提供请求缓冲区的地址和长度正确。
  102 无法访问所提供响应缓冲区的开头。 请确保所提供响应缓冲区的地址和长度正确。
  104 无法访问所提供响应缓冲区的结尾。 请确保所提供响应缓冲区的地址和长度正确。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试调用。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效或注销调用 (BBOA1URG API) 可能已使连接池失效。
  24 注册调用成功后,从连接池中获取连接时发生错误。 验证服务器是否已启动。如果服务器未启动,请重新启动服务器,然后再次尝试该 API 请求。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

主机服务

本地 WebSphere Application Server 的主机服务。此 API 使用其他底层原语 API 函数来设置本地语言 z/OS 程序,以作为从本地 WebSphere Application Server 进行优化本地适配器调用的服务器和目标。它旨在用于预先知道请求区域最大大小的情况中。
表 25. BBOA1SRV(31 位调用者)和 BBGA1SRV(64 位调用者)API 语法. 在“参数”部分说明了此语法。
API 语法
BBOA1SRV 或 BBGA1SRV

BBOA1SRV ( registername, requestservicename, requestservicenamel, requestdata, requestdatalen, connectionhandle, waittime, rc, rsn, rv )

BBGA1SRV ( registername, requestservicename, requestservicenamel, requestdata, requestdatalen, connectionhandle, waittime, rc, rsn, rv )

参数:

registername(输入)

一个入口变量或入口常量,它包含要用于查找从中检索此调用连接的连接池的名称。该参数必须是正好由 12 个字符组成的用空格填充的字符串。

requestservicename(输入/输出)

包含服务名称的最多 256 个字节的 EBCDIC 字符串。这是 WebSphere Application Server 应用程序在 InteractionSpec 上指定的目标服务的名称。值 * 表明设置为当前注册名称下具有的所有服务名称的服务器。

requestservicenamel(输入/输出)

一个整数,其中包含要启动的服务名称的长度;如果服务名称以 null 结束,那么此整数为 0

requestdata(输入)

指向所接收到的请求数据开始处的地址的 31 位指针或 64 位指针。该参数指向的存储器必须位于调用者可写入的键中。

requestdatalen(输入)

包含要将接收到的消息存放到的数据区域长度的 32 位无符号值(31 位方式)或者 64 位无符号值(64 位方式)。

connectionhandle(输出)

返回到调用者并用于发送此请求的响应的 12 个字节的连接句柄。

waittime(输入)

包含在返回连接不可用的原因码之前等待连接完成的秒数的整数。值 0(零)意味着没有超时,此 API 将无限期等待。

rc(输出)

表明此调用成功或失败的整数返回码。

rsn(输出)

描述此调用失败原因的整数原因码。

rv(输出)

包含收到并复制到调用者区域中的消息请求数据大小的 32 位整数返回值。

使用说明

  • 请确保在此调用上指定的 WebSphere Application Server for z/OS 守护程序组和服务器已启动,并且已启用对本地适配器的支持。
  • 使用此 API 之前,请确保使用相匹配的名称在当前地址空间中成功完成了注册(BBOA1REG 或 BBGA1REG API)调用。
  • 如果 API 调用者输入 requestdatalen 参数大于实际的消息响应,那么返回码将包含 0(零),并且将在返回值中提供实际的消息长度。
  • 对于使用 BBOA1SRP 或 BBGA1SRP API 的此主机调用,必须在所有响应上提供返回的连接句柄。后续的 BBOA1SRV 或 BBGA1SRV API 调用将复用同一连接句柄。如果情况如此,那么 API 会假定不存在对于先前请求的响应。
  • 要点: 主机服务调用返回到调用者之后,消息数据不再存在,连接将返回到可用于其他 API 请求的状态。
返回码和原因码:
表 26. BBOA1SRV 和 BBGA1SRV API 返回码和原因码. 下表还推荐了适当的操作。
返回码 原因码 描述 操作
0 - 成功  
4 - 警告 - 请参阅原因码  
8 - 错误 - 请查看原因码  
  8 注册名称标记已存在。 确保传递的注册名称有效。
  10 连接句柄处于已释放状态。 请确保传递了正确的连接句柄。
  12 连接句柄不在注册名称中的连接内。 请更正程序,然后重试该调用。
  16 请求服务名称长度无效。 请更正程序,然后重试该调用。
  18 响应长度超出了系统限制。 消息大小大于 WebSphere Application Server 大小可以支持的大小。请验证该大小是否有效。如果大小有效,请确保 WebSphere Application Server 的大小足够容纳消息。
  40 发生本地通信错误。 请检查 WebSphere Application Server 服务器日志以获取所有的本地通信错误消息。
  46 在本地通信发送请求调用中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  48 在本地通信读请求中发生错误。 请检查 WebSphere Application Server 日志以确定错误。
  50 WebSphere Application Server 的连接已终止。 请检查 WebSphere Application Server 日志以确定错误。
  72 响应长度输入参数的大小不足以包含响应消息。 只能返回部分消息。消息的其余部分都被废弃。请参考返回值以获取消息响应的大小。
  76 由于服务器不再运行,所以与服务器通信的尝试失败。 启动服务器,然后再次尝试进行通信。
  96 在 IMS 初始化期间或 IMS 预初始化退出期间,无法驱动此 API。 请在 IMS 初始化完成后调用此 API。
  98 无法访问所提供请求缓冲区的开头。 请确保所提供请求缓冲区的地址和长度正确。
  100 无法访问所提供请求缓冲区的结尾。 请确保所提供请求缓冲区的地址和长度正确。
12 10 找不到 WebSphere Application Server 守护程序组或服务器。 请确保 WebSphere Application Server 守护程序和服务器已启动,并且本地连接支持处于活动状态,然后重试。
  14 无法查找或验证使用提供的连接句柄的 API 调用向量。 连接句柄无效,或者注销调用(BBOA1URG 或 BBGA1URG API)可能已使连接池失效。
  34 在 IMS 环境中使用了 64 位 API 存根。 64 位 API 在 IMS 下不受支持。
  38 在 CICS 环境中使用了 64 位 API 存根。 64 位 API 在 CICS 下不受支持。
  44 服务调用的 CP 构建错误。  
  46 服务调用的 CP 获取错误。  
  48 服务调用的 CP 释放错误。  
  60 无法获取 SRVQ 锁定。  
  62 无法对 SRVQ 锁定进行解锁。  
  86 找不到 WebSphere Application Server for z/OS 主 BGVT 在当前 z/OS 系统映像上尚未启动 WebSphere。请确保在启动任何 WebSphere Application Server 优化本地适配器客户机进程之前守护程序和节点/服务器已启动。
  88 找不到 WebSphere Application Server for z/OS 主客户机存根表。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。
  90 找不到 WebSphere Application Server for z/OS 优化本地适配器主客户机存根表槽。 WebSphere Application Server 在当前 z/OS 系统映像上已启动,但是未在支持优化本地适配器客户机存根的级别运行。您可能正在使用与应用程序服务器的维护级别不兼容的 WebSphere Application Server V8.0.0.1 优化本地适配器存根接口进行运行。要使用 V8.0.0.1 优化本地适配器存根,应用程序服务器必须也在 WebSphere Application Server V8.0.0 级别运行。级别动态应用提供程序策略。 请确保应用程序正在与此 z/OS 系统上的 WebSphere Application Server 兼容的优化本地适配器存根级别运行。

JCA 适配器 API

对于从 WebSphere Application Server 到批处理程序或子系统的调用,WebSphere Application Server 应用程序使用标准的 JCA API。为此适配器定制的对象包括:
  • ConnectionSpec
  • InteractionSpec
  • 记录 I/O
请参阅信息中心内的相关链接以获取有关这些标准 JCA API 的更多信息。

使用 ConnectionSpec API 来指示与其进行通信的注册名称。使用“注册 API”时将创建注册名称。它还标识要连接的子系统。一个子系统可以有多个注册名称。

“程序链接事务标识”的名称可以从 WebSphere Application Server 传递到 CICS 并用来运行程序链接调用任务。这必须是由 4 个字符组成并且在 CICS 区域中已定义的参数。您必须使用与 BBO# 事务(程序:BBOACLNK)相同的属性和程序名来设置此参数。当使用 setLinkTaskTranid 方法传递此事务标识时,它将覆盖 BBO# API 和任何使用带有 LTX=xxx 参数的 BBOC 指定的事务标识。

可以使用 setUseCICSContainer 方法或 JCA MappedRecord 接口来通过通道和容器向 CICS 发送应用程序。

  • setUseCICSContainer 方法在 ConnectionSpecImpl 上提供。此参数设置为 1 时,消息请求 CICS 容器的名称和类型将使用 setLinkTaskReqContid() 和 setLinkTaskReqContType(0|1) 方法(其中 0=CHAR 和 1=BIT)传递到 CICS。将消息请求 CICS 容器传递到 CICS 时,目标程序在使用选定类型 BIT 或 CHAR 创建的指定容器中传递了其自己的输入数据。

    可以使用方法 setLinkTaskRspContid() 和 setLinkTaskRspContType(bit|char) 将消息响应 CICS 容器的名称和类型传递到 CICS。进行此传递时,预期目标程序响应来自所选类型为 BIT 或 CHAR 的指定容器。

  • 可以使用 JCA MappedRecord 接口来向 CICS 传递一个或多个容器。使用 JCA MappedRecord 接口时,指定的通道用于与目标程序通信。如果使用 MappedRecord 接口,那么必须将 UseCICSContainer 设置为 1,并且必须使用方法 setLinkTaskChanID() 和 setLinkTaskChanType(bit|char) 将 CICS 通道的名称和类型传递到 CICS。
    避免故障 避免故障: 通过调用 recordFactory.createMappedRecord() 方法,使用从 WOLA 连接对象获取的 recordFactory 来获取用于向 CICS 传递容器的 JCA MappedRecord 接口。请勿将 setLinkTaskReqContId()、setLinkTaskReqContType()、setLinkTaskRspContId() 或 SetLinkTaskRspContType() 方法与 JCA MappedRecord 接口配合使用。gotcha

对于 IMS 应用程序事务,对连接规范使用 setOTMAMaxRecvSize(nnn) 方法以设置最大消息接收大小。要设置最大段连接级别值,请对连接规范使用 setOTMAMaxSegments(nnn) 方法。有关将优化本地适配器通过 OTMA 与 IMS 配合使用的更多信息,请参阅“使用优化本地适配器通过 OTMA 来调用现有 IMS 事务”主题。

InteractionSpec

InteractionSpec API 用来指定目标要启动哪项服务。这取决于已启动哪个子系统或批处理。此过程可选择是接收特定服务的请求还是任何服务的请求。对于 CICS,服务名称是要在 CICS 中启动的程序的名称。

记录 I/O

应用程序可使用 JCA 记录接口将数据传递到适配器并从适配器接收数据。此适配器 API 将提议使用建立索引的记录接口,以允许调用者将一个或多个数据结构(包括 Cobol 副本和 C 结构)传递到外部地址空间。列表中的每个索引都会视作独立的副本并按该顺序传递到目标。

使用 IndexedRecordImpl 从函数调用接受返回参数时,可将其预定义为接受特定数量的参数,并且可提供组装工具为单个副本和结构生成的类名。IndexedRecordImpl 扩充了序列化的副本和结构并将它们设置为 IndexedRecordImpl,这样无需处理序列化的 byte[] 说明就可以对它们进行检索和使用。

要提供有关此 API 如何工作的一般概念,将仅显示所选的方法。接口上的所有方法都将实现。


指示主题类型的图标 参考主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cdat_olaapis
文件名:cdat_olaapis.html