Discussions

EJB design: Transaction management across multiple platform

  1. Hi All,

    I have a situation where -
    - There is an existing C/C++ based system which talks to an Oracle DB.
    - A new J2EE based system is being developed which will also talk to the same oracle DB.

    For certain use cases the transaction boundary can spread across the new J2EE based system and the existing C/C++ based system. The typical implementation for that would be -

    In J2EE layer, a EJB connects to the DB instance to do an update and then it calls another EJB. This 2nd EJB internally calls a function/method of the existing C/C++ system which in turn does another update to the same DB instance. These 2 updates to DB need to be in same transaction context.

    The 2nd EJB can connect to the existing C/C++ system either through JNI or through JCA (presently I'm analysing these 2 integration options between the J2EE and C/C++ based systems).

    In this context I'm looking for options for managing the transaction across these 2 systems.

    Any pointer/inputs will be really appreciated.

    Thanks in advance,

    Regards,
    Sourav

    Threaded Messages (1)

  2. App server[ Go to top ]

    The fact is that only when there are transaction managers into picture from both the systems, can the transaction context be propogated. So now you have many ways to implement this..
    for example.. make your C++ stuff run as a CORBA service (as you said its on a different system), so then the application servers could take care of the transaction context. Make sure you set appropriate values for transaction levels in the CORBA deployment for your C++ components.

    Hope this helps.

    Regards,
    Rakesh.