您可以在自己的事件绑定中指定信息,用于控制 CICS® 如何发出由事件绑定生成的事件。
关于此任务
您可以使用分派器信息来定义由该绑定创建的事件会发生的情况。您可以选择 EP 适配器来发出事件,然后选择与 EP 适配器关联的选项。
过程
- 单击 CICS 事件绑定编辑器中的适配器选项卡,并选择使用在此定义的适配器选项,以指定要用于此事件绑定的 EP 适配器配置、EP 适配器的参数和所有高级信息。
您还可以选择要使用预定义的 EPADAPTER 资源还是 EPADAPTERSET 资源。
有关预定义 EPADAPTER 资源的更多信息,请参阅 CICS TS 5.1 信息中心中的事件处理 (EP) 适配器配置编辑器。有关预定义 EPADAPTERSET 资源的更多信息,请参阅 CICS TS 5.1 信息中心中的事件处理 (EP) 适配器集编辑器。
如果指定预定义 EPADAPTER 或 EPADAPTERSET 资源,那么必须在名称字段中输入名称,或者单击选择以选择资源。有关选择适配器资源的更多信息,请参阅CICS TS 5.1 信息中心内的“选择 EP 适配器资源”和CICS TS 5.1 信息中心内的“选择 EP 适配器集资源”。
- 可选: 您可以导出该事件绑定中的一个或多个事件规范。
要导出事件规范,请输入预定义的 EPADAPTER 资源的名称,或者选择所需的适配器:
- 使用 TSQ EP 适配器或 WebSphere® MQ
EP 适配器
并选择 CFE 格式以二进制形式发出事件,以便提供 COBOL 副本 (.cpy)。
- 使用任何其他 EP 适配器和格式来提供 XML 模式定义
(.xsd)。
- 单击导出事件规范。 如果使用 EPADAPTER 资源,并且工作空间包含多个具有相同名称的适配器,那么将要求您从列表中选择一个适配器。 这样会显示“导出事件规范”窗口。
- 选择想要导出的事件规范。
- 要导出事件规范,请在目标目录字段中指定目录。
- 如果使用在工作空间中找不到的预定义 EPADAPTER 资源,那么必须为数据格式字段选择适当的值。
- 单击导出。
针对所选的每个事件规范,指定的目录中会创建一个文件。
以下是一些示例规范:
- 如果指定了 WebSphere MQ
EP 适配器
和公共基本事件格式,并且选择名为 example1 和 example2 的两个事件规范,那么会创建两个 XML 模式文件:example1_CBE.xsd 和 example2_CBE.xsd。
您可以将这些模式文件导入 IBM® Business Monitor,以帮助定义入站事件。
- 如果指定了 WebSphere MQ
EP 适配器
和 WebSphere Business Events (XML) 格式,并且选择名为 example1 的事件规范,那么会创建一个 XML 模式文件 example1_WBE.xsd。
可以在 WebSphere Business Events Design Data 工具中使用该模式文件,以帮助定义事件。
- 如果指定 HTTP EP 适配器和公共基本事件 REST 格式,并且选择名为 example1 和 example2 的两个事件规范,那么会创建两个 XML 模式文件:example1_CBER.xsd 和 example2_CBER.xsd。您可以将这些模式文件导入 IBM Business Monitor,以帮助定义入站事件。
- 如果指定 HTTP EP 适配器和 WebSphere Business Events (XML) 格式,并且选择名为 example1 的事件规范,那么会创建一个 XML 模式文件 example1_WBE.xsd。可以在 WebSphere Business Events Design Data 工具中使用该模式文件,以帮助定义入站事件。
- 如果指定 HTTP EP 适配器和公共基本事件格式,并且选择名为 example1 和 example2 的两个事件规范,那么会创建两个 XML 模式文件:example1_CBE.xsd 和 example2_CBE.xsd。您可以将这些模式文件导入接受公共基本事件格式的任何使用者,以帮助定义入站事件。
- 如果指定 TS 队列 EP 适配器,并且选择名为 example1 和 example2 的两个事件规范,那么会创建两个 COBOL 副本:example1.cpy 和 example2.cpy。
可以使用这些副本来处理事件使用者程序中的数据。
请注意,如果您导出事件规范,然后再次将相同的事件规范导出到相同的目录,那么 CICS 事件绑定编辑器会提示您是覆盖现有文件还是取消导出操作。
- 从适配器列表中选择 EP 适配器类型。 您可以指定以下 EP 适配器类型:
- TS 队列
- 以某种 XML 格式(公共基本事件、公共基本事件 REST 或 WebSphere Business Events (WBE))或以非 XML (CFE) 格式向指定的 CICS TS 队列发出事件。该 EP 适配器用于验证已捕获带有正确数据的正确事件,并向从 TS 队列进行读取的任何使用者发出事件。
- 对于有保证的事件发出,同步事务性事件需要可恢复的 TS 队列;同步非事务性事件需要不可恢复的队列。
TS 队列是否可恢复取决于匹配 TSMODEL 的设置;TS 队列只有当存在匹配 TSMODEL 时才可恢复。将 TS 队列适配器用于同步事务性事件时,无法针对捕获事件的工作单元中的事件 TS 队列发出 DELETEQ TS 命令。
- 事务启动
- 向指定的 CICS 事务发出事件。
传递给事务的数据采用基于容器的事件格式。您可以指定要运行该事务的 CICS 系统。如果无需事件数据,那么可以使用现有事务。
- 事务启动 EP 适配器不支持事件的保证发出。
- 定制(用户写入)
- 以您所需的任何格式发出事件。定制 EP 适配器是可写入的 CICS 程序,用于提供由所提供的 EP 适配器不支持的事件的格式化和路由组合。定制 EP 适配器不得执行任何其他处理,例如,使用事件。
- 对于有保证的事件发出,定制 EP 适配器必须符合事件的可恢复性需求。查阅您的定制 EP 适配器的文档以了解它是否支持事务性或非事务性同步事件。
- WebSphere Message Queue
- 采用供 WebSphere Business Events 使用的 XML 格式、用于 IBM Business Monitor 的“公共基本事件”格式或非 XML 格式向 WebSphere 消息队列发出事件。
- 对于有保证的事件发出,如果结合使用 WebSphere MQ
EP 适配器和持久的 WebSphere 消息队列,那么事件传递是有保证的。
- HTTP
- 以 XML 格式用 HTTP POST 向符合 HTTP 1.1 的服务器发出事件,以供诸如 WebSphere Business Events 和 IBM Business Monitor 之类的产品使用。
- HTTP EP 适配器不支持事务性事件的保证发出。
- 为所选的 EP 适配器类型指定选项:
- 为 TS 队列 EP 适配器指定以下选项:
- 指定 CICS 队列名称。您必须指定队列名称。
- 如果目标队列为远程队列,请指定系统标识。
- 如果需要,请选择使用辅助临时存储器。
- 指定事件的数据格式。从数据格式列表中选择以下值之一:
- CICS 序列化事件(二进制)
- 事件数据采用非 XML 格式。
- WebSphere Business Events (XML)
- 事件数据采用 XML 格式。
- 公共基本事件 (XML)
- 事件数据采用 XML 格式。
- 公共基本事件 REST (XML)
- 事件数据采用 XML 格式。
- 为事务启动 EP 适配器指定以下选项:
- 指定作为事件结果运行的 CICS 应用程序的事务标识。您必须指定事务标识。
- 指定事务用户标识。由事务启动 EP 适配器启动的事务会使用该用户标识运行。
- 指定系统标识(只可用于事务 EP 适配器)。EP 适配器事务会使用该系统标识在 CICS 系统上运行。
- 为定制(用户写入)EP 适配器指定以下选项:
- 指定以下项之一:
- (如果是异步发出方式)用于格式化、传递并发出事件的用户编写的 CICS 应用程序的事务标识。您必须指定定制 EP 适配器用于异步发出的事务标识。
- (如果是同步发出方式)用于格式化、传递并发出事件的用户编写的 CICS 应用程序的名称。您必须指定定制 EP 适配器用于同步发出的程序标识。
- 将要传递的数据写入定制 EP 适配器。您的定制 EP 适配器会处理该数据。
- 为 WebSphere MQ EP 适配器指定以下选项:
- 指定 WebSphere MQ 队列的队列名称,由此事件绑定发出的事件置于该队列上。您必须指定队列名称。
- 指定消息是否持久。从持久列表中选择以下值之一。
- 否
- 由 WebSphere MQ EP 适配器置于队列上的消息
为非持久性消息。
- 是
- 由 WebSphere MQ EP 适配器置于队列上的消息
为持久性消息。
- 队列缺省值
- 置于队列上的消息会继承指定队列的缺省持久状态。
- 指定消息优先级。您可以选择队列缺省值,或者在优先级字段中输入 0 - 9 之间的一个值作为 WebSphere MQ 消息优先级。
- 指定过期时间。您可以选择永不过期,或者在过期时间字段中为 WebSphere MQ 消息过期输入一个值。该时间以十分之几秒表示。如果在这段时间内未从目标队列中除去消息,那么就可以丢弃该消息。
- 指定事件的数据格式。从数据格式列表中选择以下值之一:
- CICS 序列化事件(二进制)
- 事件数据采用非 XML 格式。
- WebSphere Business Events (XML)
- 将消息以 WebSphere Business Events 所需的 XML 格式置于队列上。
- 公共基本事件 (XML)
- 将消息以 IBM Business Monitor 所需的公共基本事件格式置于队列上。
- 为 HTTP EP 适配器指定以下选项:
- 指定 URIMAP。表示与兼容 HTTP 1.1 的服务器连接的 URIMAP 资源。
- 指定事件的数据格式。从数据格式列表中选择以下值之一:
- 公共基本事件 REST (XML)
- 将事件以 IBM Business Monitor 所需的 XML 格式发送到兼容 HTTP 1.1 的服务器。
- WebSphere Business Events (XML)
- 将事件以 WebSphere Business Events 所需的 XML 格式发送到兼容 HTTP 1.1 的服务器。
- 公共基本事件 (XML)
- 事件会以支持“公共事件基础结构”的任何产品使用的公共基本事件格式发送到符合 HTTP 1.1 的服务器。
- 可选: 指定任何必需的高级分派器选项。 这些选项适用于高级用户,它们可以控制 EP 适配器在 CICS 系统中的运行方式。
注: 通常,使 CICS 在分派器线程下运行 EP 适配器会更有效。但是,可能需要将 EP 适配器作为单独的事务来运行;例如,需要使用具有针对 WebSphere MQ 队列的写权限的特定用户标识来运行该适配器时,或是希望使用 TRANCLASS 设置控制并发 EP 适配器任务的数量时。
- 指定发出方式。 您可以指定 ASYNC 或 SYNC 来指定发出事件的方式。请为有保证的事件发出指定同步发出方式。如果发出方式为同步,WebSphere MQ EP 适配器会发出以下事件:
- 使用 MQPMO_SYNCPOINT 选项的事务性事件。可以在捕获事务的工作单元中恢复 WebSphere MQ 消息。
- 使用 MQPMO_NO_SYNCPOINT 选项的非事务性事件。
如果发出方式是异步,WebSphere MQ EP 适配器会使用 MQPMO_NO_SYNCPOINT 选项发出事件。
注: - 对于同步事件(有保证的事件发出),事件捕获应用程序需要对事件发出传输具有写权限。
对于异步事件,EP 适配器需要具有写权限。
- 为 HTTP EP 适配器指定 SYNC NONTRANS 可将正在捕获的事务转换到一个 Web 应用程序,您可能需要相应地重新配置该应用程序。
- 设置任何事务(可能通过 HTTP EP 适配器发出同步事件)的 TRANSACTION 定义的 DTIMOUT 属性。
- 指定分派优先级。 您可以指定普通或高优先级,控制事件分派器如何处理与该事件绑定关联的事件。根据事件是事务性的设置,高优先级事件一旦可用就可发出。根据事件是事务性的设置,普通优先级事件一旦可用就可发出,但是要在任何未完成的高优先级事件之后发出。
注: 同步发出方式不适用该选项。
- 指定事务标识和用户标识。 使用指定的事务标识和用户标识启动适配器。
事务标识与定制 EP 适配器类型不相关,因为它是在适配器部分中设置的。EP 分派器任务根据事务标识和用户标识的设置,启动或链接到 EP 适配器程序。
表 1. WebSphere MQ EP 适配器、TS 队列 EP 适配器和事务启动 EP 适配器的事务标识和用户标识指定了事务标识 |
指定了用户标识 |
使用上下文用户标识 |
EP 适配器 |
EP 适配器运行时使用的标识 |
EP 适配器事务标识 |
x |
x |
|
已连接 |
指定的用户标识 |
指定的事务标识 |
x |
|
x |
已连接 |
上下文用户标识 |
指定的事务标识 |
|
x |
|
已连接 |
指定的用户标识 |
CEPQ(用于 WebSphere MQ EP 适配器)
CEPT(用于 TS 队列 EP 适配器)
CEPS(用于事务启动 EP 适配器)
|
|
|
x |
已连接 |
上下文用户标识 |
CEPQ(用于 WebSphere MQ EP 适配器)
CEPT(用于 TS 队列 EP 适配器)
CEPS(用于事务启动 EP 适配器)
|
x |
|
|
已连接 |
CICS 缺省用户标识 |
指定的事务标识 |
|
|
|
已链接 |
CICS 区域用户标识 |
不适用 |
如果要启动的 WebSphere MQ
队列、TS 队列或事务是远程的,那么请参阅
以获得有关安全设置的信息。
表 2. HTTP EP 适配器的事务标识和用户标识指定了事务标识 |
指定了用户标识 |
使用上下文用户标识 |
EP 适配器 |
EP 适配器运行时使用的标识 |
EP 适配器事务标识 |
x |
x |
|
已连接 |
指定的用户标识 |
指定的事务标识 |
x |
|
x |
已连接 |
上下文用户标识 |
指定的事务标识 |
|
x |
|
已连接 |
指定的用户标识 |
CEPH |
|
|
x |
已连接 |
上下文用户标识 |
CEPH |
x |
|
|
已连接 |
CICS 缺省用户标识 |
指定的事务标识 |
|
|
|
已连接 |
CICS 缺省用户标识 |
CEPH |
对于具有事务标识和异步发出方式的定制(用户编写)EP 适配器,EP 分派器任务始终使用指定的用户标识、上下文用户标识或 CICS 缺省用户标识连接到此适配器。
注: 这两个选项不适用于同步发出方式。
- 指定事件是否是事务性的。 如果希望 CICS 仅在与事件关联的业务工作单元 (UOW) 成功完成时才捕获事件,请选中事件是事务性的复选框。
注: 慎重考虑是否应将不可恢复操作捕获的事务指定为事务性。
例如,如果从 WEB SEND 命令捕获了一个事务性事件并且随后回退了工作单元,那么将回退该事件,但是 WEB SEND 命令可能已导致发出了 HTTP 消息。
如果希望 CICS 在事务外处理与该事件绑定关联的事件,请取消选中事件是事务性的复选框。事件会在生成时发出。
结果
现在即完成了针对事件绑定的适配器和分派器信息。