Rearchitect existing flow servies to use Broker


Appreciate your inputs/experiences here

We are currently on wm 6.0.1 SP2 (without using Broker).

We have 2 production servers (with wm 6.0.1 SP2) where SAP Adapter and Trading Networks are installed and enabled on both server.

Some (Most) of our application will

  1. receive the IDocs from SAP via SAP Adapter
  2. IDocs posted to TN
  3. Processing Rule triggers a flow service to transfrom the IDocs
    into EDI (during the transformation, some access to TN Profile
    information is performed)
  4. Post EDI to Trading Network (routeXML, etc)
  5. EDI Delivered to trading partner via FTP

We are planning to upgrade to wm 6.1 with Broker and would like to
re-architect our application to make use of Broker

Our planned architecture is to have 1 server (call SAP wmServer) with SAP Adapter installed (to receive IDocs) and 1 server with TN installed (call TN wmServer) (actually, there are more than 1 server for each purpose. But the overriding principle is TN is not installed on every server)

Planned Architecture

  1. Receive IDocs from SAP in SAP wmServer
  2. Trigger a flow service in SAP wmServer to transform the IDoc to
    Canonical Document (*** Questions here)
  3. Publish Canonical Document to Broker
  4. A Flow Service will be triggered (subscribed to the published
    canonical document) in the TN wmServer to transfer the Canonical
    to EDI
  5. Posted the EDI to TN and delivered to Trading Partner via FTP (within
    the TM wmServer)

During Step 2, some access to TN Partner Profile inforamtion is required, some of my idea is

  1. Develop a wrapper flow service around TN in the TM wmServer, so that
    a TN request document can be published by an application in the SAP
    wmServer and subscribed by the TN wrapper to perform TN function in
    the TM wmServer and return results (as published document) back to
    SAP wmServer
    Cons: 1. Development / Maintenance of the generic Wrapper takes
    development effort
    2. Lots of documents published/subscribed through the Broker
    3. Essentially require a publish and wait approach

  2. Perform a remote invoke to TN Function (TN wmServer) by the
    application in the SAP wmSever
    Cons: 1. Not recommend by webMethods

  3. Best (from my point of view). Not TN access should be done in Step
    2, but all TN related function should be done in Step 4 (i.e.
    from Canonical to TN).
    Cons: May not be feasible

Appreicate any helps/experiences/other approach.

Thanks in advance