Author: rmannibucau
Date: Thu Jun 21 08:03:38 2012
New Revision: 1352442
URL: http://svn.apache.org/viewvc?rev=1352442&view=rev
Log:
force juli config loading before all other (before multi threading)
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/Core.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/Core.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/Core.java?rev=1352442&r1=1352441&r2=1352442&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/Core.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/Core.java
Thu Jun 21 08:03:38 2012
@@ -17,6 +17,7 @@
package org.apache.openejb;
import java.util.concurrent.Semaphore;
+import org.apache.openejb.util.JuliLogStreamFactory;
import org.apache.openejb.util.Logger;
import org.apache.openejb.util.Messages;
@@ -26,7 +27,6 @@ import org.apache.openejb.util.Messages;
public class Core {
static {
final String[] classes = {
- "org.apache.openejb.util.JuliLogStreamFactory",
"org.slf4j.LoggerFactory",
"org.slf4j.impl.StaticLoggerBinder",
@@ -89,6 +89,14 @@ public class Core {
final Semaphore semaphore = new Semaphore(permits);
final ClassLoader loader = OpenEjbContainer.class.getClassLoader();
+ try { // do it before all other to force juli config
+ Class.forName("org.apache.openejb.util.JuliLogStreamFactory",
true, loader);
+ } catch (Throwable e) {
+ // no-op
+ } finally {
+ semaphore.release();
+ }
+
for (final String className : classes) {
try {
semaphore.acquire();