11-04-2013 02:03 PM
public class ProgrammaticProcessEngineConfiguration implements ProcessEngineLookup {
private ProcessEngine processEngine;
private EntityManagerFactory emf;
@Override
public ProcessEngine getProcessEngine() {
CdiJtaProcessEngineConfiguration processEngineConfiguration = new CdiJtaProcessEngineConfiguration();
processEngineConfiguration.setTransactionsExternallyManaged(true)
.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_FALSE)
.setJobExecutorActivate(true).setHistory("audit");
try {
processEngineConfiguration.setTransactionManager(getTransactionManager());
} catch (Exception e) {
throw new FSPException("no.transaction.manager", e);
}
processEngineConfiguration.setDataSourceJndiName("jboss/datasources/ActivitiDsMysql");
emf = Persistence.createEntityManagerFactory("fsp-jpa-extendedTask");
processEngineConfiguration.setJpaEntityManagerFactory(emf);
processEngineConfiguration.setJpaHandleTransaction(false);
processEngineConfiguration.setJpaCloseEntityManager(false);
StrongUuidGenerator idGenerator = new StrongUuidGenerator();
processEngineConfiguration.setIdGenerator(idGenerator);
ArrayList<BpmnParseHandler> handlers = new ArrayList<BpmnParseHandler>();
handlers.add(new HistoryHandler());
handlers.add(new TaskHandler());
processEngineConfiguration.setPostBpmnParseHandlers(handlers);
processEngine = processEngineConfiguration.buildProcessEngine();
// Initialize the Custom Query Utils
final CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutorTxRequired();
CustomQueryHelper.initialize(commandExecutor);
return processEngine;
}
@Override
public void ungetProcessEngine() {
processEngine.close();
}
@Override
public int getPrecedence() {
return 100;
}
public TransactionManager getTransactionManager() throws Exception {
return (TransactionManager) new InitialContext().lookup("java:jboss/TransactionManager");
}
11-05-2013 07:26 AM
11-05-2013 08:07 AM
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.