WebLogic Platform中的受管文件传输功能
文件转换
如果文件传输像在 GlobalTx 用例中一样作为集成方法使用,则向目标系统提供的信息的格式必须是所设计的系统处理格式。由于交易伙伴可能会发送按 FIX 规范编码的文件,GlobalTx 的 OMS 将需要一个转换引擎来将订单转换成进一步处理所需的格式。如图 4 所示,可通过上一节所讨论的自动处理文件的机制中的任何一种,在收到“消息代理”通道中发布的消息时调用此引擎。此操作很重要,因为将来新的交易伙伴很可能因 IT 系统和应用完全不同而使用不同的格式。因此,现代的文件传输需要有转换功能,使信息在发送或者在接收之前即已作“消息处理”,如图 6 所示。此转换应该使用易于使用的工具以达到无缝和高效文件传输效果。

图 6. 文件传输中的消息转换
WebLogic Platform 使用易于使用的 Format Builder 工具解决此需求。有关如何有效使用 Format Builder 来定义 MFL 定义的详细信息,请参阅 Workshop 文档。我们可以使用此工具来定义消息转换规则,将交易伙伴发送的 FIX 转换成 GlobalTx 的 OMS 能理解的标准 XML 格式。这可通过使用定界符表示消息结构并将此数据映射到所需输出 XML 格式的节点来完成。您可以使用 Format Builder 工具附带的 Format Tester 程序立即验证定义的映射。图 7 演示 Format Tester 如何按 Format Builder 中的定义将非 XML 文件消息转换为相应的 XML 表示法。

图 7. 使用 Format Tester 验证消息转换(单击图像查看全屏快照)
一旦映射,这些定义将存储在 MFL(Message Formatting Language,消息格式语言)文件中。MFL 文件与 XML 模式 (XSD) 非常相似;唯一的差别在于前者定义的是自定义格式,而非 XSD 定义的 XML 格式。WebLogic Integration 遵循 MFL 定义将原始数据输入进行轮换,然后根据基于消息的应用将数据映射到 Java 对象。图 8 演示非 XML 原始数据如何映射到从 MFL 定义创建的 JavaBean 对象。

图 8. 将非 XML 数据映射到 JavaBean 对象(单击图像查看全屏快照)
为以上映射所生成的代码片段如下:
public void clientRequest(com.bea.data.RawData x0) throws Exception //#START: CODE GENERATED - PROTECTED SECTION - // You can safely add code above this comment in this method. // input transform parameter assignment this.fixObj = fix.FIXMLMflObject.newInstance(x0); //#END: CODE GENERATED - PROTECTED SECTION - // You can safely add code below this comment in this method. #//
以上示例演示如何使用 WebLogic Platform 工具使非 XML 格式的文件的转换成为一项普通的任务。