3.7.2.2.6 Exceptions

If an error occurs while executing activate_object(), the application code should raise either a CORBA standard exception or a TobjS::ActivateObjectFailed exception. When an exception is raised, the TP Framework catches the exception, and the following events occur:

  • The activation fails.
  • The method invoked by the client is not executed.
  • If activate_object() is executing within a transaction and the client initiated the transaction, the transaction is not rolled back.
  • A CORBA::OBJECT_NOT_EXIST exception is raised back to the client.

    Note:

    For each CORBA interface, set AUTOTRAN to Yes if you want a transaction to start automatically when an operation invocation is received. Setting AUTOTRAN to Yes has no effect if the interface is already in transaction mode. For more information about AUTOTRAN, see Using CORBA Transactions.
  • Based on the exception is raised, a message is written to the user log (ULOG) file, as follows:
    TobjS::ActivateObjectFailed
    "TPFW_CAT:24: ERROR: Activating object - application raised 
    TobjS::ActivateObjectFailed. Reason = reason  . Interface =  
    interfaceName  , OID =  oid  " 
    Where reason is a user-supplied reason, and interfaceName and oid are the interface ID and object ID, respectively, of the invoked CORBA object.
    TobjS::OutOfMemory
    "TPFW_CAT:22: ERROR: Activating object - application raised 
    TobjS::OutOfMemory. Reason = reason. Interface = interfaceName, OID = 
    oid"
    Where reason is a user-supplied reason, and interfaceName and oid are the interface ID and object ID, respectively, of the invoked CORBA object.
    CORBA::Exception
    "TPFW_CAT:25: ERROR: Activating object - CORBA Exception not handled 
    by application. Exception ID = exceptionID. Interface = interfaceName, 
    OID = oid"
    Where exceptionID is the interface ID of the exception, and interfaceName and oid are the interface ID and object ID, respectively, of the invoked CORBA object.
    Other exception
    "TPFW_CAT:26: ERROR: Activating object - Unknown Exception not handled 
    by application. Exception ID = exceptionID. Interface = interfaceName, 
    OID = oid"
    Where exceptionID is the interface ID of the exception, and interfaceName and oid are the interface ID and object ID, respectively, of the invoked CORBA object.