Author: rmannibucau
Date: Thu May 29 17:16:03 2014
New Revision: 1598336

URL: http://svn.apache.org/r1598336
Log:
TOMEE-1226 correct lifecycle handling of TomEERealm delegate(s)

Modified:
    
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java

Modified: 
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java?rev=1598336&r1=1598335&r2=1598336&view=diff
==============================================================================
--- 
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
 (original)
+++ 
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatWebAppBuilder.java
 Thu May 29 17:16:03 2014
@@ -20,8 +20,10 @@ import org.apache.catalina.Cluster;
 import org.apache.catalina.Container;
 import org.apache.catalina.Engine;
 import org.apache.catalina.Host;
+import org.apache.catalina.Lifecycle;
 import org.apache.catalina.LifecycleException;
 import org.apache.catalina.LifecycleListener;
+import org.apache.catalina.LifecycleState;
 import org.apache.catalina.Loader;
 import org.apache.catalina.Manager;
 import org.apache.catalina.Pipeline;
@@ -367,7 +369,15 @@ public class TomcatWebAppBuilder impleme
         if (realm != null && !(realm instanceof TomEERealm)
                 && (engine.getParent() == null
                 || (engine.getParent() != null && 
!realm.equals(engine.getParent().getRealm())))) {
-            engine.setRealm(tomeeRealm(realm));
+            final Realm tomeeRealm = tomeeRealm(realm);
+            engine.setRealm(tomeeRealm);
+            if (LifecycleState.STARTING_PREP.equals(engine.getState())) {
+                try {
+                    Lifecycle.class.cast(tomeeRealm).start();
+                } catch (final LifecycleException e) {
+                    throw new IllegalStateException(e);
+                }
+            }
         }
     }
 


Reply via email to