HTTPInput 节点

本主题包含以下部分:

用途

使用 HTTPInput 节点接收由消息流处理的 Web service 请求。结合 HTTPReply 和 HTTPRequest 节点使用 HTTPInput 节点,代理可用作 Web service 的媒介,并可用与受 WebSphere Message Broker 支持的其他消息格式的相同方法转换和路由 Web service 请求。 Web service 请求能以标准 HTTP(1.0 或 1.1)格式或者 HTTP over SSL(HTTPS)格式接收。可设置使用 HTTPS 属性以控制是否处理 HTTP 或 HTTPS 请求。

如果在消息流中包含 HTTPInput 节点,则必须在同一流中包含 HTTPReply 节点,或将消息传递到包含 HTTPReply 节点的另一个流中(例如,通过 MQOutput 节点传递到另一个以 MQInput 节点开始的流)。在后面一种情况中,来自客户机的请求和到客户机的应答由存储在 LocalEnvironment 中的请求标识协调(如下所述)。

HTTPInput 节点处理以下消息域中的消息:

  • MRM
  • XML
  • XMLNS
  • XMLNSC
  • JMS
  • JMSStream
  • IDOC
  • MIME
  • BLOB

当 HTTPInput 节点从 Web Service 客户机接收消息时,它调用相应的解析器来解释消息头和消息体并创建由消息流内部使用的消息树。该节点为输入消息创建唯一标识并将其作为一组 24 字节二进制数组存储在 LocalEnvironment 树的 LocalEnvironment.Destination.HTTP.RequestIdentifer。 该值由 HTTPReply 节点使用且不得以任何方式进行修改。

HTTP 消息始终为非持久的,且没有与之相关的顺序。

HTTP 消息是非事务的。然而,如果消息流与数据库或另一个外部资源(例如 WebSphere MQ 队列)交互,则事务性地执行这些交互。根据消息流的结束情况和如何为错误处理对其进行配置(例如,如何连接 Failure 终端),确定 HTTPInput 节点是提供落实还是回滚。如果消息流由该节点回滚,则生成故障消息,并且该消息返回到客户机。故障的格式由“故障格式”属性定义。

如果在该消息流的下游发生异常,并且没有捕获异常而是将其返回到该节点,则节点构造一个对客户机的错误应答。该错误派生自异常,其格式则由“故障格式”属性定义。

如果您在以 HTTPInput 节点开始的消息流中包含输出节点,则它可以是任何受支持的输出节点(包括用户定义的输出节点)。您可创建某个消息流,它从 Web Service 客户机接收消息并为使用所 有受支持传输来连接到代理的客户机生成消息,因为您可以配置消息流来请求代理提供任何必要的转换。

如果您创建将用作子流的消息流,则无法使用标准输入节点;必须使用输入节点的实例作为第一个节点来为子流创建 in 终端。

如果消息流未接收 Web service 请求,则可以选择某个受支持的输入节点。

HTTPInput 节点在工作台中由以下图标表示:

“HTTPInput 节点”图标

在消息流中使用此节点

HTTPInput 可用于任何需要接受 HTTP 或 HTTPS 消息的消息流。最常见的示例为,实现 Web service 的消息流。有关 Web service 应用程序的信息,请参阅 Web Service 应用程序

配置 HTTPInput 节点

当您将 HTTPInput 节点的实例放入消息流后,便可对它进行配置。右键单击编辑器视图中的节点,然后单击属性。 将在属性对话框中显示节点的基本属性。

对于必须为其输入值的所有必需属性(没有定义缺省值的属性),在属性对话框上都会用星号作标记。

如下所示配置 HTTPInput 节点:

  1. URL 选择器中,输入此节点用来接收 Web Service 请求的 URL 的路径部分。 不要输入整个 URL。
  2. 输入最大客户机等待时间超时时间间隔,该时间以秒为单位。这是从 Web Service 客户机接收输入消息的 TCP/IP 侦听器等待消息流中来自 HTTPReply 节点的响应的时间长度。如果在此时间内接收到响应,则 侦听器会响应传播到客户机。如果在此时间内没有接收到响应,则侦听器将 SOAP 故障消息发送到客户机,表明超时到期。
  3. 故障格式选为 SOAP 1.1SOAP 1.2HTML 中的一个。
  4. 如果节点要接受安全 HTTP,则选中使用 HTTPS 复选框。
  5. 在属性对话框导航器中选择“缺省”,并为描述节点用于确定如何解析进入消息的消息域、消息集、消息类型和消息格式的属性设置值。
    • 消息域字段中,选择您从下拉列表使用的解析器名称。您可从下列各项中选择:
      • MRM
      • XML
      • XMLNS
      • XMLNSC
      • JMSMap
      • JMSStream
      • IDOC
      • MIME
      • BLOB
    • 如果您使用的是 MRM 或 IDOC 解析器,则从消息集字段中的下拉列表中选择正确的消息集。当您选择 MRM 或 IDOC 作为域时,用可用消息集植入此列表。

      将 XML、XMLNS、XMLNSC、JMS、MIME 和 BLOB 解析器的消息集字段保留为空白。

    • 如果您使用的是 MRM 解析器,则从消息类型中的下拉列表中选择正确的消息。此列表是用所选的消息集中定义的消息填充的。

      将 XML、XMLNS、XMLNSC、JMS、IDOC、MIME 和 BLOB 解析器的消息类型保留为空白。

    • 如果您使用的是 MRM 或 IDOC 解析器,则从消息格式字段的下拉列表中选择消息的格式。 此列表包含您为此消息集定义的所有物理格式。

      将 XML、XMLNS、XMLNSC、JMS、MIME 和 BLOB 解析器的消息格式字段保留为空白。

  6. 如果您要 MRM 解析器按照从消息集生成的字典验证消息的体,则在属性对话框导航器中选择“验证”。(如果消息传播到节点的 Failure 终端,则不进行验证。)

    有关更多详细信息,请参阅验证消息MRM 域中消息的验证属性

  7. 在属性对话框导航器中选择“一般消息选项”。缺省情况下,解析定时设置为按需解析。这会导致延迟验证,直至进行部分解析。如果将该选项更改为立即,则覆盖部分解析,并且会解析并验证消息中的所有内容;除了此时无法解析的那些组合为“选项”或“消息”的复杂类型。如果将该选项更改为完全解析,则将覆盖部分解析,并且会解析并验证消息中的所有内容;此时无法解析的组合为“选项”或“消息”的复杂类型会导致验证失败。
  8. 选择属性对话框导航器中的“描述”,以输入简短描述和/或详细描述。
  9. 单击应用在不关闭“属性”对话框的情况下就可以对 HTTPInput 节点进行更改。单击确定以应用更改,并关闭属性对话框。

    单击取消以关闭对话框,并废弃对属性所作的所有更改。

连接终端

HTTPInput 将它成功获取的每个消息都路由到 out 终端。如果消息验证发生故障,则消息会路由到 Failure 终端;您可以将节点连接到此终端以处理此情况。如果您未连接 Failure 终端,则会废弃消息,最长客户机等待时间会到期 ,并且 TCP/IP 侦 听器将错误返回到客户机。在其他情况下,消息不会路由到 Failure 终端。

如果消息是已经在消息流中进一步抛出异常后由节点捕捉到的,则将该消息路由到 catch 终端。如果您未连接 catch 终端,则废弃消息,最长客户机等待时间到期,并且 TCP/IP 侦听器将错误返回到客户机。

终端和属性

在以下表中描述了 HTTPInput 节点终端。

终端 描述
Failure 如果发生错误,则这是消息路由到的输出终端。
Out 如果成功检索到消息,则这是消息路由到的输出终端。
Catch 如果下游抛出异常并由此节点捕获,则这是消息路由到的输出终端。

下表描述该节点的属性;标题为 M 的列表示属性是否是必需的(如果在未定义缺省值时必须输入值,则在属性对话框上以星号作标记),标题为 C 的列表示属性是否是可配置的(将消息流添加到 BAR 文件以部署此文件时可以更改该值)。

下表描述 HTTPInput 节点的“基本”属性。

属性 M C 缺省值 描述
URL 选择器   标识从中检索 Web service 请求的位置。如果您需要的 URL 为 http://<hostname>[:<port>]/[<path>],则指定 /<path>/<path fragment>/*,其中 * 是您可用于表示与任何内容匹配的通配符。
最大客户机等待时间 180 在将错误消息发送回客户机前,侦听器等待的时间长度(以秒为单位)。有效范围是零(表示不确定的等待)到(231)-1。
故障格式 SOAP 1.1 属性值可为 SOAP 1.1SOAP 1.2HTML。该属性定义所有返回到客户机的 HTTP 错误的格式。
使用 HTTPS 标识节点是否要接受安全 HTTP。

下表描述 HTTPInput 节点“缺省”属性。

属性 M C 缺省值 描述
消息域   用于解析入局消息的域。
消息集   定义入局消息的消息集的名称或标识。
消息类型   入局消息的名称。
消息格式   入局消息物理格式的名称。

下表描述 HTTPInput 节点的“验证”属性。

请参阅MRM 域中消息的验证属性,以获取这些属性的完整描述。

属性 M C 缺省值 描述
验证 验证是否发生。有效值为内容和值以及内容
故障操作 异常 验证失败后将发生什么操作。只有将验证设置为内容内容和值,才可以设置该属性。有效值为用户跟踪本地错误日志异常异常列表
包含所有值约束 选中 无法编辑此属性。所选的复选框指出的缺省操作,即内容和值验证中包含的基本值约束检查。
固定 无法编辑此属性。

下表描述了 HTTPInput 节点的“一般消息选项”的属性。

属性 M C 缺省值 描述
解析计时 按需解析 该属性控制何时解析输入消息。有效值为按需解析立即解析完全解析

请参阅按需解析,以获取此属性的完整描述。

将 MQRFH2C 压缩解析器用于 MQRFH2 域 已清除 该属性控制 MQRFH2 头中是否使用 MQRFH2C 压缩解析器,而不是 MQRFH2 解析器。

下表描述 HTTPInput 节点的“XMLNSC 解析器选项”的属性。

属性 M C 缺省值 描述
将 XMLNSC 压缩解析器用于 XMLNS 域 已清除 更新开始此属性控制 XMLNSC 压缩解析器是否用于 XMLNS 域中的消息。请注意,如果您设置该属性,则当输入 RFH2 头或缺省属性域是 XMLNS 时,连接到输出终端的节点中的 XMLNSC 下会显示消息数据。更新结束
混合内容保留方式 此属性控制当 XMLNSC 解析器遇到输入消息中的混合文本时,是否使用该解析器创建消息树中的元素。有效值为全部。选择全部表示为混合文本创建元素。选择表示忽略混合文本并且不创建元素。
注释保留方式 此属性控制当 XMLNSC 解析器遇到输入消息中的注释时,是否使用该解析器创建消息树中的元素。有效值为全部。选择全部表示为注释创建元素。选择表示忽略注释并且不创建元素。
处理指令保留方式 此属性控制当 XMLNSC 解析器遇到输入消息中的处理指令时,是否使用该解析器创建消息树中的元素。有效值为全部。选择全部表示为处理指令创建元素。选择表示忽略处理指令并且不创建元素。

下表描述 HTTPInput 节点的“描述”属性。

属性 M C 缺省值 描述
简短描述   节点的简要描述。
详细描述   描述消息流中节点用途的文本。
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ac04565_