Search in sources :

Example 61 with LifecycleException

use of org.apache.catalina.LifecycleException in project redisson by redisson.

the class RedissonSessionManager method startInternal.

@Override
protected void startInternal() throws LifecycleException {
    super.startInternal();
    Config config = null;
    try {
        config = Config.fromJSON(new File(configPath), getClass().getClassLoader());
    } catch (IOException e) {
        // trying next format
        try {
            config = Config.fromYAML(new File(configPath), getClass().getClassLoader());
        } catch (IOException e1) {
            log.error("Can't parse json config " + configPath, e);
            throw new LifecycleException("Can't parse yaml config " + configPath, e1);
        }
    }
    try {
        redisson = Redisson.create(config);
    } catch (Exception e) {
        throw new LifecycleException(e);
    }
    setState(LifecycleState.STARTING);
}
Also used : LifecycleException(org.apache.catalina.LifecycleException) Config(org.redisson.config.Config) IOException(java.io.IOException) File(java.io.File) LifecycleException(org.apache.catalina.LifecycleException) IOException(java.io.IOException)

Example 62 with LifecycleException

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);
    }
}
Also used : LifecycleException(org.apache.catalina.LifecycleException) LifecycleException(org.apache.catalina.LifecycleException) IOException(java.io.IOException)

Example 63 with LifecycleException

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);
}
Also used : LifecycleException(org.apache.catalina.LifecycleException) IOException(java.io.IOException)

Example 64 with LifecycleException

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);
}
Also used : LifecycleException(org.apache.catalina.LifecycleException) IOException(java.io.IOException)

Example 65 with LifecycleException

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;
}
Also used : LifecycleException(org.apache.catalina.LifecycleException) PropertyChangeListener(java.beans.PropertyChangeListener) Lifecycle(org.apache.catalina.Lifecycle) Properties(java.util.Properties) TomEERuntimeException(org.apache.tomee.catalina.TomEERuntimeException) LifecycleException(org.apache.catalina.LifecycleException) IOException(java.io.IOException) TomEERuntimeException(org.apache.tomee.catalina.TomEERuntimeException) Bean(javax.enterprise.inject.spi.Bean) PropertiesAdapter(org.apache.openejb.config.sys.PropertiesAdapter) WebBeansContext(org.apache.webbeans.config.WebBeansContext) ObjectRecipe(org.apache.xbean.recipe.ObjectRecipe) BeanManager(javax.enterprise.inject.spi.BeanManager) Realm(org.apache.catalina.Realm)

Aggregations

LifecycleException (org.apache.catalina.LifecycleException)78 Lifecycle (org.apache.catalina.Lifecycle)23 IOException (java.io.IOException)18 NamingException (javax.naming.NamingException)12 MalformedURLException (java.net.MalformedURLException)11 Container (org.apache.catalina.Container)11 File (java.io.File)10 Realm (org.apache.catalina.Realm)10 ServletException (javax.servlet.ServletException)9 ArrayList (java.util.ArrayList)7 ReentrantReadWriteLock (java.util.concurrent.locks.ReentrantReadWriteLock)5 MalformedObjectNameException (javax.management.MalformedObjectNameException)5 Context (org.apache.catalina.Context)5 Loader (org.apache.catalina.Loader)5 StandardManager (org.apache.catalina.session.StandardManager)5 BindException (java.net.BindException)4 Properties (java.util.Properties)4 Lock (java.util.concurrent.locks.Lock)4 ReadWriteLock (java.util.concurrent.locks.ReadWriteLock)4 Notification (javax.management.Notification)4