A starting point to help research problems you might be encountering is the host's message log located in vbroker\adm\its.
• The transaction experiences a timeout. There are several situations related to the expiration of a timeout. A transaction may have timed out and rolled back before the transaction originator issued commit(), or you may have received a CORBA::OBJECT_NOT_EXIST exception when trying to register a Resource. If you experience these problems, make sure that your timeout period is long enough.
• The VisiTransact Transaction Service disappears. If the VisiTransact Transaction Service instance is restarted or fails while a transaction is underway, you may temporarily receive a CORBA::NO_IMPLEMENT exception when invoking VisiTransact methods.
• A Resource Director is unavailable. The Session Manager will throw a VISSessionManager::Error exception if it cannot find an XA Resource Director when the Session Manager attempts to obtain a new connection to a Resource Manager. Additionally, the VisiTransact Transaction Service should roll the transaction back if a participating Resource Director is unavailable at prepare time. (This is the same behavior experienced when any other Resource is unavailable at commit time.)
• You receive a CosTransactions::NoTransaction exception. You will get this exception if there is no transaction context. It means that your application tried to attempt a connection without first beginning a transaction.
• Session Manager configuration files are unavailable. You might be requesting the wrong connection profile.