Adapter for JMS 以有效内容业务对象的形式与 InterChange Server 相互收发文档。当 Adapter for JMS 接收或发送 WebSphere Partner Gateway 文档时,它会调用有效内容数据处理程序以处理该业务对象,如下所示:
因此,您必须创建如表 56 所示的业务对象定义,以表示 Adapter for JMS 所需要的有效内容业务对象结构。
条件 | 业务对象定义 | 了解更多信息 |
---|---|---|
对于消息,如果您正在使用“无”或“后端集成”封装,并且文档没有附件 |
有效内容业务对象 |
创建用于 JMS 的有效内容业务对象结构. |
对于文档,如果正在使用“后端集成”封装 |
用于保存消息头信息的业务对象:
|
创建 JMS 头信息. |
如果文档包含附件 | 还必须创建其它业务对象来表示这个附件。 | 创建与附件关联的业务对象定义 |
JMS 传输协议有效内容业务对象的结构取决于如下的封装类型:
正如在用于文档的业务对象中讨论的一样,必须为每部分您需要传输的有效内容信息创建属性。
有关这些步骤的更多信息,请参阅创建 JMS 头信息。
如果通过 JMS 传输协议接收或发送文档,而这些文档使用“后端集成”封装, 请求业务对象需包含定制的传输级头信息。Adapter for JMS 期望该定制的头信息在其动态元对象中。
图 24 显示了业务对象结构,Adapter for JMS 将该结构用于请求业务对象,以表示使用后端集成封装的 WebSphere Partner Gateway 文档。
请通过采用下列步骤来确保业务对象结构包含了动态子元对象:
下面几部分逐一描述了这些步骤。
JMS 属性业务对象包含传输级头所需的 JMS 属性, 它是“后端集成”封装所需的。它还可以包含内容类型属性(该属性指定要在请求消息中设置的内容类型头)和内容长度属性(以字节为单位,指定了消息长度)。表 5 描述了各个有效传输头字段。
要创建 JMS 属性业务对象定义,请采用下列步骤:
所有属性的属性类型都为“字符串”。对于 JMS 信息,传输头字段的名称使用下划线代替连字符,如表 57 中所示。
这个特定于应用程序的属性级信息必须具有如下格式:
name=JMSproperty;type=string
其中 JMSproperty 是表 57 中的 JMS 属性名列的一个值。
传输头字段 | JMS 属性名 |
---|---|
x-aux-sender-id | x_aux_sender_id |
x-aux-receiver-id | x_aux_receiver_id |
x-aux-protocol | x_aux_protocol |
x-aux-protocol-version | x_aux_protocol_version |
x-aux-process-type | x_aux_process_type |
x-aux-process-version | x_aux_process_version |
x-aux-create-datetime | x_aux_create_datetime |
x-aux-msg-id | x_aux_msg_id |
x-aux-production | x_aux_production |
x-aux-system-msg-id | x_aux_system_msg_id |
x-aux-payload-root-tag | x_aux_payload_root_tag |
x-aux-process-instance-id | x_aux_process_instance_id |
x-aux-event-status-code | x_aux_event_status_code |
x-aux-third-party-bus-id | x_aux_third_party_bus_id |
x-aux-transport-retry-count | x_aux_transport_retry_count |
content-type | content_type |
content-length | content_length |
在图 24 中,JMSProps_BusObj 业务对象定义包含了各种传输级头字段的属性。这些属性都有特定于应用程序的属性级信息以指定相关协议头的名称。例如,x_aux_sender_id 属性有如下的特定于应用程序的信息设置:
name=x_aux_sender_id;type=string
该动态元对象包含了一个子业务对象以及 Adapter for JMS 的配置信息。要创建动态元对象的业务对象定义,请遵循以下步骤:
为了使 Adapter for JMS 和 WebSphere Partner Gateway 一起工作,动态元对象的业务对象定义必须包含名为 JMSProperties 的属性,这个属性的类型是 JMS 属性业务对象的业务对象定义(请参阅创建 JMS 属性业务对象)。例如,在图 24 中,JMSDynMO_BusObj 业务对象定义包含了各配置属性的属性(未列出)并包含了 JMSProperties 属性。
为将业务对象结构合并到请求业务对象中,必须对请求业务对象定义做以下修改:
该属性的属性类型是动态元对象的业务对象定义(请参阅创建 JMS 动态元对象)。
cw_mo_conn 标记的格式如下:
cw_mo_conn=dynamicMetaObjAttr
其中 dynamicMetaObjAttr 是包含了动态元对象的请求业务对象中的属性名。
例如,在图 24 中,已经将名为JMSDynMO的属性添加到请求业务对象定义(HUB_JMSRequest_BusObj)中。该属性包含了动态元对象,这是类型为 JMSDynMO_BusObj 的子业务对象。另外,已经对请求业务对象的特定于应用程序的信息进行了修改,使之包含下列 cw_mo_conn 标记,以标识这个动态元对象:
cw_mo_conn=JMSDynMO