ObjStoreBean.getObjectStoreBrowserBean();
} catch (Exception e) {
throw new StartException("Failed to configure object store browser bean", e);
}
final RecoveryManagerService recoveryManagerService = new RecoveryManagerService();
final ORB orb = orbInjector.getValue();
if (orb == null) {
// No IIOP, stick with JTA mode.
final com.arjuna.ats.jbossatx.jta.TransactionManagerService service = new com.arjuna.ats.jbossatx.jta.TransactionManagerService();
service.setJbossXATerminator(xaTerminatorInjector.getValue());
service.setTransactionSynchronizationRegistry(new com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple());
recoveryExtensions.add(com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.class.getName());
recoveryEnvironmentBean.setRecoveryExtensions(recoveryExtensions);
recoveryEnvironmentBean.setExpiryScanners(expiryScanners);
recoveryEnvironmentBean.setRecoveryActivators(null);
jtaEnvironmentBean.setTransactionManagerClassName(com.arjuna.ats.jbossatx.jta.TransactionManagerDelegate.class.getName());
jtaEnvironmentBean.setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.arjunacore.UserTransactionImple.class.getName());
try {
recoveryManagerService.create();
} catch (Exception e) {
throw new StartException("Recovery manager create failed", e);
}
recoveryManagerService.start();
try {
service.create();
} catch (Exception e) {
throw new StartException("Transaction manager create failed", e);
}
service.start();
this.recoveryManagerService = recoveryManagerService;
value = service;
} else {
// IIOP is enabled, so fire up JTS mode.
final com.arjuna.ats.jbossatx.jts.TransactionManagerService service = new com.arjuna.ats.jbossatx.jts.TransactionManagerService();
service.setJbossXATerminator(xaTerminatorInjector.getValue());
service.setTransactionSynchronizationRegistry(new com.arjuna.ats.internal.jta.transaction.jts.TransactionSynchronizationRegistryImple());
recoveryExtensions.add(TopLevelTransactionRecoveryModule.class.getName());
recoveryExtensions.add(ServerTransactionRecoveryModule.class.getName());
recoveryExtensions.add(com.arjuna.ats.internal.jta.recovery.jts.XARecoveryModule.class.getName());
expiryScanners.add(ExpiredContactScanner.class.getName());
expiryScanners.add(ExpiredToplevelScanner.class.getName());
expiryScanners.add(ExpiredServerScanner.class.getName());
recoveryEnvironmentBean.setRecoveryExtensions(recoveryExtensions);
recoveryEnvironmentBean.setExpiryScanners(expiryScanners);
recoveryEnvironmentBean.setRecoveryActivators(Collections.singletonList(com.arjuna.ats.internal.jts.orbspecific.recovery.RecoveryEnablement.class.getName()));
jtaEnvironmentBean.setTransactionManagerClassName(com.arjuna.ats.jbossatx.jts.TransactionManagerDelegate.class.getName());
jtaEnvironmentBean.setUserTransactionClassName(com.arjuna.ats.internal.jta.transaction.jts.UserTransactionImple.class.getName());
try {
recoveryManagerService.create();
} catch (Exception e) {
throw new StartException("Recovery manager create failed", e);
}
recoveryManagerService.start();
try {
service.create();
} catch (Exception e) {
throw new StartException("Create failed", e);