[ https://issues.apache.org/jira/browse/LOG4J2-461?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14021120#comment-14021120
]
Abid commented on LOG4J2-461:
-----------------------------
Adding of jars into subdirectory of "WL_HOME/server/lib/mbeantypes" was suggested by Oracle
Support with whom I have an SR open to track this issue. But I think this suggestion was not
correct because I suspect that WLS loads each jar inside the subdirectory inside a separate
classloader and hence this visibility issue between API and core jars. So I dropped this option
floated as a half-hearted solution by Oracle. And they have not been able to suggest anything
so far.
Given your pointers on weblogic use of OSGi, I packaged the core and api jars with my custom
security provider jar (which is generated by WLS tools), and modified "MANIFEST.MF" to have
entries:
{code:title=MANIFEST.MF|borderStyle=solid}
...
..
Name: log4j-core-2.0-rc2-SNAPSHOT.jar
Name: log4j-api-2.0-rc2-SNAPSHOT.jar
Bundle-ClassPath: log4j-api-2.0-rc2-SNAPSHOT.jar,log4j-core-2.0-rc2-SNAPSHOT.jar,disruptor-3.2.0.jar,log4j2.xml,.
{code}
But nothing progressive; now WLS starts to throw NoClassDefFoundError:
{code:title=std.out/error|borderStyle=solid}
<Jun 8, 2014 9:08:27 AM AST> <Error> <Security> <BEA-090870> <The
realm "myrealm" failed to be loaded: weblogic.security.service.SecurityServiceException: java.lang.NoClassDefFoundError:
org/apache/logging/log4j/Logger.
weblogic.security.service.SecurityServiceException: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Logger
at weblogic.security.service.CSSWLSDelegateImpl.initializeServiceEngine(CSSWLSDelegateImpl.java:341)
at weblogic.security.service.CSSWLSDelegateImpl.initialize(CSSWLSDelegateImpl.java:220)
...
...
Caused By: java.lang.NoClassDefFoundError: org/apache/logging/log4j/Logger
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:249)
at com.bea.common.security.internal.legacy.service.SecurityProviderImpl.init(SecurityProviderImpl.java:46)
at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:363)
at com.bea.common.engine.internal.ServiceEngineImpl.findOrStartService(ServiceEngineImpl.java:315)
Truncated. see log file for complete stacktrace
Caused By: java.lang.ClassNotFoundException: org.apache.logging.log4j.Logger
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Truncated. see log file for complete stacktrace
>
<Jun 8, 2014 9:08:28 AM AST> <Notice> <Security> <BEA-090082> <Security
initializing using security realm myrealm.>
...
...
{code}
Thanks,
Abid
> ERROR StatusLogger Unable to locate a logging implementation, using SimpleLogger
> ---------------------------------------------------------------------------------
>
> Key: LOG4J2-461
> URL: https://issues.apache.org/jira/browse/LOG4J2-461
> Project: Log4j 2
> Issue Type: Bug
> Components: log4j 1.2 emulation
> Affects Versions: 2.0-beta9, 2.0-rc1
> Environment: Android
> Reporter: Gaurav Kapoor
> Priority: Blocker
> Attachments: MANIFEST.MF
>
>
> ERROR StatusLogger Unable to locate a logging implementation, using SimpleLogger
> Code:
> Logger LOG = LogManager.getLogger(MainActivity.class);
> LOG.error("Test Log4j2");
> {code}
> <?xml version="1.0" encoding="UTF-8"?>
> <Configuration>
> <Appenders>
> <Console name="STDOUT" target="SYSTEM_OUT">
> <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
> </Console>
> </Appenders>
> <Loggers>
> <Logger name="hello" level="info"/>
> <Root level="trace">
> <AppenderRef ref="STDOUT"/>
> </Root>
> </Loggers>
> </Configuration>
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org
|