use of org.apache.catalina.LifecycleException in project redisson by redisson.
the class RedissonSessionManager method stopInternal.
@Override
protected void stopInternal() throws LifecycleException {
super.stopInternal();
setState(LifecycleState.STOPPING);
try {
if (redisson != null) {
redisson.shutdown();
}
} catch (Exception e) {
throw new LifecycleException(e);
}
}
use of org.apache.catalina.LifecycleException in project geode by apache.
the class Tomcat7DeltaSessionManager method startInternal.
/**
* Prepare for the beginning of active use of the public methods of this component. This method
* should be called after <code>configure()</code>, and before any of the public methods of the
* component are utilized.
*
* @throws LifecycleException if this component detects a fatal error that prevents this component
* from being used
*/
@Override
public void startInternal() throws LifecycleException {
super.startInternal();
if (getLogger().isDebugEnabled()) {
getLogger().debug(this + ": Starting");
}
if (this.started.get()) {
return;
}
this.lifecycle.fireLifecycleEvent(START_EVENT, null);
// Register our various valves
registerJvmRouteBinderValve();
if (isCommitValveEnabled()) {
registerCommitSessionValve();
}
// Initialize the appropriate session cache interface
initializeSessionCache();
try {
load();
} catch (ClassNotFoundException e) {
throw new LifecycleException("Exception starting manager", e);
} catch (IOException e) {
throw new LifecycleException("Exception starting manager", e);
}
// Create the timer and schedule tasks
scheduleTimerTasks();
this.started.set(true);
this.setState(LifecycleState.STARTING);
}
use of org.apache.catalina.LifecycleException in project geode by apache.
the class Tomcat8DeltaSessionManager method startInternal.
/**
* Prepare for the beginning of active use of the public methods of this component. This method
* should be called after <code>configure()</code>, and before any of the public methods of the
* component are utilized.
*
* @throws LifecycleException if this component detects a fatal error that prevents this component
* from being used
*/
@Override
public void startInternal() throws LifecycleException {
super.startInternal();
if (getLogger().isDebugEnabled()) {
getLogger().debug(this + ": Starting");
}
if (this.started.get()) {
return;
}
fireLifecycleEvent(START_EVENT, null);
// Register our various valves
registerJvmRouteBinderValve();
if (isCommitValveEnabled()) {
registerCommitSessionValve();
}
// Initialize the appropriate session cache interface
initializeSessionCache();
try {
load();
} catch (ClassNotFoundException e) {
throw new LifecycleException("Exception starting manager", e);
} catch (IOException e) {
throw new LifecycleException("Exception starting manager", e);
}
// Create the timer and schedule tasks
scheduleTimerTasks();
this.started.set(true);
this.setState(LifecycleState.STARTING);
}
use of org.apache.catalina.LifecycleException in project tomee by apache.
the class LazyRealm method instance.
private Realm instance() {
if (delegate == null) {
synchronized (this) {
if (delegate == null) {
final Object instance;
ClassLoader cl = Thread.currentThread().getContextClassLoader();
if (container != null && container.getLoader() != null && container.getLoader().getClassLoader() != null) {
cl = container.getLoader().getClassLoader();
}
final Class<?> clazz;
try {
clazz = cl.loadClass(realmClass);
} catch (final ClassNotFoundException e) {
throw new TomEERuntimeException(e);
}
if (!cdi) {
try {
final ObjectRecipe recipe = new ObjectRecipe(clazz);
recipe.allow(Option.CASE_INSENSITIVE_PROPERTIES);
recipe.allow(Option.IGNORE_MISSING_PROPERTIES);
recipe.allow(Option.FIELD_INJECTION);
recipe.allow(Option.PRIVATE_PROPERTIES);
if (properties != null) {
final Properties props = new PropertiesAdapter().unmarshal(properties.trim().replaceAll("\\p{Space}*(\\p{Alnum}*)=", "\n$1="));
recipe.setAllProperties(props);
}
instance = recipe.create();
} catch (final Exception e) {
throw new TomEERuntimeException(e);
}
} else {
final WebBeansContext webBeansContext;
try {
webBeansContext = WebBeansContext.currentInstance();
if (webBeansContext == null) {
return null;
}
} catch (final IllegalStateException ise) {
// too early to have a cdi bean, skip these methods - mainly init() but @PostConstruct works then
return null;
}
final BeanManager bm = webBeansContext.getBeanManagerImpl();
final Set<Bean<?>> beans = bm.getBeans(clazz);
final Bean<?> bean = bm.resolve(beans);
if (bean == null) {
return null;
}
creationalContext = bm.createCreationalContext(null);
instance = bm.getReference(bean, clazz, creationalContext);
}
if (instance == null) {
throw new TomEERuntimeException("realm can't be retrieved from cdi");
}
if (instance instanceof Realm) {
delegate = (Realm) instance;
delegate.setContainer(container);
delegate.setCredentialHandler(credentialHandler);
if (Lifecycle.class.isInstance(delegate)) {
if (init) {
try {
final Lifecycle lifecycle = Lifecycle.class.cast(delegate);
lifecycle.init();
if (start) {
lifecycle.start();
}
} catch (final LifecycleException e) {
// no-op
}
}
}
} else {
delegate = new LowTypedRealm(instance);
delegate.setContainer(container);
delegate.setCredentialHandler(credentialHandler);
}
for (final PropertyChangeListener listener : support.getPropertyChangeListeners()) {
delegate.addPropertyChangeListener(listener);
}
}
}
}
return delegate;
}
use of org.apache.catalina.LifecycleException in project tomee by apache.
the class Container method stop.
public void stop() throws Exception {
final Connector connector = tomcat.getConnector();
if (null != connector) {
connector.stop();
}
try {
tomcat.stop();
} catch (final LifecycleException e) {
e.printStackTrace();
}
try {
tomcat.destroy();
} catch (final LifecycleException e) {
e.printStackTrace();
}
if (configuration.isDeleteBaseOnStartup()) {
try {
deleteTree(base);
} catch (final Exception e) {
e.printStackTrace();
}
}
OpenEJB.destroy();
// don't set base = null here to be able to use base after to clean up from outside of this class
}
Aggregations