@Override public void start(StartContext context) throws StartException { BlockingExecutor longRunning = (BlockingExecutor) executorLong.getOptionalValue(); if (longRunning != null) { this.value.setLongRunningThreadPool(longRunning); this.value.setShortRunningThreadPool((BlockingExecutor) executorShort.getValue()); } else { this.value.setLongRunningThreadPool((BlockingExecutor) executorShort.getValue()); this.value.setShortRunningThreadPool((BlockingExecutor) executorShort.getValue()); } this.value.setXATerminator(new XATerminatorImpl(xaTerminator.getValue())); // TODO - Remove and do proper integration (IronJacamar 1.1) String callbackProperties = AccessController.doPrivileged(new PrivilegedAction<String>() { @Override public String run() { return System.getProperty("callback.properties"); } }); if (callbackProperties != null) { try { DefaultCallback defaultCallback = new DefaultCallback(callbackProperties); defaultCallback.start(); this.callback = defaultCallback; this.value.setCallbackSecurity(callback); } catch (Throwable t) { ROOT_LOGGER.debug(t.getMessage(), t); } } ROOT_LOGGER.debugf("Starting JCA WorkManager"); }