You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2013/11/18 08:49:41 UTC
svn commit: r1542943 - in /tomee/tomee/trunk:
container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceBootstrap.java
tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatLoader.java
Author: rmannibucau
Date: Mon Nov 18 07:49:41 2013
New Revision: 1542943
URL: http://svn.apache.org/r1542943
Log:
TOMEE-1075 don't use SystemInstance too eagerly in PersistenceBootstrap + runWarmup only after SystemInstance init
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceBootstrap.java
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatLoader.java
Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceBootstrap.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceBootstrap.java?rev=1542943&r1=1542942&r2=1542943&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceBootstrap.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceBootstrap.java Mon Nov 18 07:49:41 2013
@@ -96,7 +96,7 @@ public class PersistenceBootstrap {
final Collection<String> pXmlNames = new ArrayList<String>();
// altdd logic duplicated to avoid classloading issue in tomee-webapp mode
- final String altDD = SystemInstance.get().getOptions().get("openejb.altdd.prefix", (String) null);
+ final String altDD = getAltDD();
if (altDD != null) {
for (final String p : altDD.split(",")) {
pXmlNames.add(p + ".persistence.xml");
@@ -213,6 +213,15 @@ public class PersistenceBootstrap {
}
}
+ // don't force eager init
+ private static String getAltDD() {
+ final String property = "openejb.altdd.prefix";
+ if (SystemInstance.isInitialized()) {
+ return SystemInstance.get().getOptions().get(property, (String) null);
+ }
+ return System.getProperty(property);
+ }
+
private static void debug(String x) {
if (debug) System.out.println("[PersistenceBootstrap] " + x);
}
Modified: tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatLoader.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatLoader.java?rev=1542943&r1=1542942&r2=1542943&view=diff
==============================================================================
--- tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatLoader.java (original)
+++ tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/TomcatLoader.java Mon Nov 18 07:49:41 2013
@@ -93,11 +93,6 @@ import java.util.Set;
* @version $Revision: 617255 $ $Date: 2008-01-31 13:58:36 -0800 (Thu, 31 Jan 2008) $
*/
public class TomcatLoader implements Loader {
-
- static {
- Warmup.warmup();
- }
-
private static final Logger logger = Logger.getInstance(LogCategory.OPENEJB_STARTUP, TomcatLoader.class);
public static final String TOMEE_NOSHUTDOWNHOOK_PROP = "tomee.noshutdownhook";
@@ -115,12 +110,6 @@ public class TomcatLoader implements Loa
private static final List<ServerService> services = new ArrayList<ServerService> ();
/**
- * Creates a new instance.
- */
- public TomcatLoader() {
- }
-
- /**
* Â {@inheritDoc}
*/
public void init(Properties properties) throws Exception {
@@ -131,6 +120,9 @@ public class TomcatLoader implements Loa
// Loader maybe the first thing executed in a new classloader
// so we must attempt to initialize the system instance.
SystemInstance.init(properties);
+
+ Warmup.warmup(); // better than static (we are sure we don't hit it too eagerly) and doesn't cost more since uses static block
+
initialize(properties);
}