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 2014/10/06 13:01:01 UTC
svn commit: r1629615 - in /tomee/tomee/branches/tomee-1.7.x:
container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/
container/openejb-core/src/main/java/org/apache/openejb/cdi/
container/openejb-core/src/main/java/org/apache/openejb...
Author: rmannibucau
Date: Mon Oct 6 11:01:01 2014
New Revision: 1629615
URL: http://svn.apache.org/r1629615
Log:
don't init logger too early
Modified:
tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/util/Logger.java
tomee/tomee/branches/tomee-1.7.x/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Container.java
Modified: tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java?rev=1629615&r1=1629614&r2=1629615&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java (original)
+++ tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java Mon Oct 6 11:01:01 2014
@@ -217,7 +217,7 @@ public class Assembler extends Assembler
}
public static final String OPENEJB_URL_PKG_PREFIX = IvmContext.class.getPackage().getName();
- public static final Logger logger = Logger.getInstance(LogCategory.OPENEJB_STARTUP, Assembler.class);
+ public final Logger logger;
public static final String OPENEJB_JPA_DEPLOY_TIME_ENHANCEMENT_PROP = "openejb.jpa.deploy-time-enhancement";
public static final String PROPAGATE_APPLICATION_EXCEPTIONS = "openejb.propagate.application-exceptions";
private static final String GLOBAL_UNIQUE_ID = "global";
@@ -289,6 +289,7 @@ public class Assembler extends Assembler
}
public Assembler(final JndiFactory jndiFactory) {
+ logger = Logger.getInstance(LogCategory.OPENEJB_STARTUP, Assembler.class);
skipLoaderIfPossible = "true".equalsIgnoreCase(SystemInstance.get().getProperty("openejb.classloader.skip-app-loader-if-possible", "true"));
persistenceClassLoaderHandler = new PersistenceClassLoaderHandlerImpl();
@@ -1147,7 +1148,7 @@ public class Assembler extends Assembler
return ejbs;
}
- private static TimerStore newTimerStore(final BeanContext beanContext) {
+ private TimerStore newTimerStore(final BeanContext beanContext) {
for (final DeploymentContext context : Arrays.asList(beanContext, beanContext.getModuleContext(), beanContext.getModuleContext().getAppContext())) {
final String timerStoreClass = context.getProperties().getProperty(TIMER_STORE_CLASS);
if (timerStoreClass != null) {
@@ -1493,7 +1494,7 @@ public class Assembler extends Assembler
return resources;
}
- private static void destroyResource(final String name, final String className, final Object object) {
+ private void destroyResource(final String name, final String className, final Object object) {
if (object instanceof ResourceAdapter) {
final ResourceAdapter resourceAdapter = (ResourceAdapter) object;
try {
@@ -2664,6 +2665,7 @@ public class Assembler extends Assembler
}
private static void logUnusedProperties(final Map<String, Object> unsetProperties, final ServiceInfo info) {
+ Logger logger = null;
for (final String property : unsetProperties.keySet()) {
//TODO: DMB: Make more robust later
if (property.equalsIgnoreCase("Definition")) {
@@ -2703,6 +2705,9 @@ public class Assembler extends Assembler
continue; // inline service (no sp)
}
+ if (logger == null) {
+ logger = SystemInstance.get().getComponent(Assembler.class).logger;
+ }
logger.getChildLogger("service").warning("unusedProperty", property, info.id);
}
}
@@ -2779,7 +2784,7 @@ public class Assembler extends Assembler
transformers.add(classFileTransformer);
}
} else if (!logged.getAndSet(true)) {
- logger.warning("assembler.noAgent");
+ SystemInstance.get().getComponent(Assembler.class).logger.warning("assembler.noAgent");
}
}
@@ -2793,7 +2798,7 @@ public class Assembler extends Assembler
instrumentation.removeTransformer(transformer);
}
} else {
- logger.error("assembler.noAgent");
+ SystemInstance.get().getComponent(Assembler.class).logger.error("assembler.noAgent");
}
}
}
Modified: tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java?rev=1629615&r1=1629614&r2=1629615&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java (original)
+++ tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/cdi/OpenEJBLifecycle.java Mon Oct 6 11:01:01 2014
@@ -22,6 +22,7 @@ import org.apache.openejb.BeanContext;
import org.apache.openejb.OpenEJBRuntimeException;
import org.apache.openejb.assembler.classic.AppInfo;
import org.apache.openejb.assembler.classic.Assembler;
+import org.apache.openejb.loader.SystemInstance;
import org.apache.openejb.util.LogCategory;
import org.apache.openejb.util.Logger;
import org.apache.webbeans.config.BeansDeployer;
@@ -193,7 +194,7 @@ public class OpenEJBLifecycle implements
//Deploy bean from XML. Also configures deployments, interceptors, decorators.
deployer.deploy(scannerService);
} catch (final Exception e1) {
- Assembler.logger.error("CDI Beans module deployment failed", e1);
+ SystemInstance.get().getComponent(Assembler.class).logger.error("CDI Beans module deployment failed", e1);
throw new OpenEJBRuntimeException(e1);
} finally {
CURRENT_APP_INFO.remove();
Modified: tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/util/Logger.java
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/util/Logger.java?rev=1629615&r1=1629614&r2=1629615&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/util/Logger.java (original)
+++ tomee/tomee/branches/tomee-1.7.x/container/openejb-core/src/main/java/org/apache/openejb/util/Logger.java Mon Oct 6 11:01:01 2014
@@ -33,12 +33,9 @@ import java.util.ResourceBundle;
public class Logger {
private static final String SUFFIX = ".Messages";
private static final String OPENEJB = "org.apache.openejb";
+ private static final Properties EMPTY_PROPS = new Properties();
private static LogStreamFactory logStreamFactory;
- static {
- configure();
- }
-
// don't return the instance since it needs to stay private but export which one is used to allow integration with other libs (as tomcat ;))
@SuppressWarnings("UnusedDeclaration")
public static String delegateClass() {
@@ -49,16 +46,22 @@ public class Logger {
}
public static synchronized void configure() {
+ configure(EMPTY_PROPS);
+ }
+
+ public static synchronized void configure(final Properties config) {
if (logStreamFactory != null) {
return;
}
//See if user factory has been specified
- String factoryName = SystemInstance.get().getOptions().get("openejb.log.factory", JuliLogStreamFactory.class.getName());
+ final String julFqn = JuliLogStreamFactory.class.getName();
+ String factoryName = config.getProperty("openejb.log.factory",
+ SystemInstance.isInitialized() ? SystemInstance.get().getOptions().get("openejb.log.factory", julFqn) : julFqn);
if ("jul".equalsIgnoreCase(factoryName) || "juli".equalsIgnoreCase(factoryName)) {
- factoryName = JuliLogStreamFactory.class.getName();
+ factoryName = julFqn;
} else if ("slf4j".equalsIgnoreCase(factoryName)) {
@@ -255,6 +258,8 @@ public class Logger {
* @return Logger
*/
public static Logger getInstance(final LogCategory category, final String baseName) {
+ configure();
+
try {
return loggerCache.compute(new Object[]{category, baseName});
} catch (final InterruptedException e) {
Modified: tomee/tomee/branches/tomee-1.7.x/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Container.java
URL: http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.7.x/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Container.java?rev=1629615&r1=1629614&r2=1629615&view=diff
==============================================================================
--- tomee/tomee/branches/tomee-1.7.x/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Container.java (original)
+++ tomee/tomee/branches/tomee-1.7.x/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Container.java Mon Oct 6 11:01:01 2014
@@ -150,7 +150,12 @@ public class Container implements Closea
setup(configuration);
}
- Logger.configure();
+ final Properties props = configuration.getProperties();
+ if (props != null) {
+ Logger.configure(configuration.getProperties());
+ } else {
+ Logger.configure();
+ }
final File conf = new File(base, "conf");
final File webapps = new File(base, "webapps");
@@ -171,7 +176,6 @@ public class Container implements Closea
} else {
copyFileTo(conf, "server.xml");
}
- final Properties props = configuration.getProperties();
if (props != null && !props.isEmpty()) {
final FileWriter systemProperties = new FileWriter(new File(conf, "system.properties"));
try {