将 Web 客户机请求路由到 AOR

您可以使用 Web 感知应用程序来响应 Web 客户机请求。 对于非 Web 感知应用程序,您可以在路由器区域中使用转换器程序。

关于此任务

如果要使用非 Web 感知应用程序响应请求,那么一个解决方案是在非 Web 感知应用程序(它在路由器区域中运行)编码您的表示逻辑,并将您的业务逻辑(它在 AOR 中运行)编码为完全独立于演示。 指定非 Web 感知应用程序作为处理请求的程序,并且它必须管理它自己与执行业务逻辑的应用程序的通信。 作为 HTTP 服务器的 CICS 的 HTTP 请求和响应处理 说明了 Web 感知应用程序的处理阶段。

不能在 AOR 中使用 EXEC CICS WEB API; 只能在路由器区域中使用该 API。

对于非 Web 感知应用程序,您可以使用路由器区域中的转换器程序来从 AOR 中的应用程序提供的信息生成 HTTP 响应。 图 1 显示在应用程序拥有区域中运行非 Web 感知应用程序时与来自 Web 客户机的请求相关联的处理阶段和任务结构。
图 1。 CICS Web Support 如何将非 Web 感知应用程序请求路由到 AOR
此图说明处理 HTTP 请求时的处理阶段和任务结构,并将应用程序请求路由到应用程序拥有区域。
CICS® 业务逻辑接口的相应阶段如 图 2所示。
图 2。 CICS 业务逻辑接口如何将应用程序请求路由到 AOR
此图显示处理 HTTP 请求时的处理阶段和任务结构,并将应用程序请求路由到应用程序拥有区域。

CICS 使用分布式程序链接 (DPL) 在 AOR 中调用应用程序; 应用程序在镜像任务下运行。 有关 DPL 的信息,请参阅 DPL 概述

要在 AOR 中运行业务应用程序:
  • 指定 REMOTESYSTEM 属性,或在应用程序的 PROGRAM 定义中指定 DYNAMIC(YES)。 如果您指定 DYNAMIC(YES),动态路由选择程序确定运行应用程序的位置。
  • 其他资源定义(用于分析器程序、Web 感知应用程序或转换器程序以及别名事务)必须指定它们在路由器区域中运行。
  • 您必须定义路由器区域和 AOR 之间的 MRO 或 APPC 连接。

如果 AOR 中运行的应用程序完全独立于演示,那么它将输出返回到非 Web 感知应用程序或转换器程序,然后它构造 HTML 输出。 或者,如果您正在使用转换器程序,那么可能要在 AOR 中使用 EXEC CICS DOCUMENT API 来构造 HTML 输出。 转换器程序可以使用该输出来生成一个完整的 HTTP 响应。

您必须提供您自己的机制,以将应用程序输出传送回路由器区域。 输出可以在 COMMAREA 中传输。 另外,您还可以使用某些其他机制(例如,临时存储队列),并传输以该机制表示数据的令牌。 路由器区域中的程序可以使用令牌来检索输出,然后处理该输出并将其传递到 Web 客户机。 CICS 提供可用于执行此操作的样本状态管理程序 (DFH$WBSR)。 请参阅 DFH$WBST 和 DFH$WBSR 的参考信息。 另一个样本 DFH$WBST 创建亲缘关系,因此不适合在 CICSPlex ® 中使用。