You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Gary Gregory (JIRA)" <ji...@apache.org> on 2014/07/10 05:23:05 UTC

[jira] [Comment Edited] (LOG4J2-703) Android: Could not find class 'javax.naming.InitialContext', referenced from method org.apache.logging.log4j.core.lookup.JndiLookup.lookup

    [ https://issues.apache.org/jira/browse/LOG4J2-703?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14057086#comment-14057086 ] 

Gary Gregory edited comment on LOG4J2-703 at 7/10/14 3:22 AM:
--------------------------------------------------------------

Committed revision 1609378.

The code now guards against this failure, logs a warning and continues on its merry way. You just will not be able to do JNDI lookups if JNDI is not there, like apparently, on Android.

Please test and close if it works for you.


was (Author: garydgregory):
Committed revision 1609378.

The code now guards against this failure, logs a warning and continues on its merry way. You just will not be able to do JNDI lookups if JNDI is not there, like apparently, on Android.

> Android: Could not find class 'javax.naming.InitialContext', referenced from method org.apache.logging.log4j.core.lookup.JndiLookup.lookup
> ------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: LOG4J2-703
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-703
>             Project: Log4j 2
>          Issue Type: Bug
>    Affects Versions: 2.0-rc2
>         Environment: Android
>            Reporter: Nelson MELINA
>            Priority: Blocker
>             Fix For: 2.0
>
>
> Hi guys, i'm trying to use Log4J2 in an Android (19) application and it's not working. Here is the code i have and the stacktrace i obtain when running the application.
> Am i missing something or is Log4J2 not working yet in an Android environment ?
> {code:title=MyActivity.java|borderStyle=solid}
> import org.apache.logging.log4j.LogManager;
> import org.apache.logging.log4j.Logger;
> public class MyActivity extends Activity {
>     static final Logger logger = LogManager.getLogger(MyActivity.class.getName());
>     @Override
>     protected void onCreate(Bundle savedInstanceState) {
>         super.onCreate(savedInstanceState);
>         setContentView(R.layout.activity_my);
>         logger.error("TEST ############################################");
>     }
> {code}
> {noformat}
> 07-08 10:40:23.401    1307-1307/com.intl.log4j2xtest E/dalvikvm﹕ Could not find class 'javax.naming.InitialContext', referenced from method org.apache.logging.log4j.core.lookup.JndiLookup.lookup
> 07-08 10:40:23.441    1307-1307/com.intl.log4j2xtest E/AndroidRuntime﹕ FATAL EXCEPTION: main
>     Process: com.intl.log4j2xtest, PID: 1307
>     java.lang.VerifyError: org/apache/logging/log4j/core/lookup/JndiLookup
>             at org.apache.logging.log4j.core.lookup.Interpolator.<init>(Interpolator.java:75)
>             at org.apache.logging.log4j.core.config.AbstractConfiguration.<init>(AbstractConfiguration.java:99)
>             at org.apache.logging.log4j.core.config.NullConfiguration.<init>(NullConfiguration.java:29)
>             at org.apache.logging.log4j.core.LoggerContext.<clinit>(LoggerContext.java:63)
>             at org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.locateContext(ClassLoaderContextSelector.java:218)
>             at org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.getContext(ClassLoaderContextSelector.java:144)
>             at org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.getContext(ClassLoaderContextSelector.java:80)
>             at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:72)
>             at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:37)
>             at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:473)
>             at com.intl.log4j2xtest.MyActivity.<clinit>(MyActivity.java:16)
>             at java.lang.Class.newInstanceImpl(Native Method)
>             at java.lang.Class.newInstance(Class.java:1208)
>             at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
>             at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2112)
>             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
>             at android.app.ActivityThread.access$800(ActivityThread.java:135)
>             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
>             at android.os.Handler.dispatchMessage(Handler.java:102)
>             at android.os.Looper.loop(Looper.java:136)
>             at android.app.ActivityThread.main(ActivityThread.java:5017)
>             at java.lang.reflect.Method.invokeNative(Native Method)
>             at java.lang.reflect.Method.invoke(Method.java:515)
>             at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
>             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
>             at dalvik.system.NativeStart.main(Native Method)
> {noformat}
> build.gradle file :
> {noformat}
> apply plugin: 'com.android.application'
> android {
>     compileSdkVersion 19
>     buildToolsVersion "19.1.0"
>     defaultConfig {
>         applicationId "com.intl.log4j2xtest"
>         minSdkVersion 19
>         targetSdkVersion 19
>         versionCode 1
>         versionName "1.0"
>     }
>     buildTypes {
>         release {
>             runProguard false
>             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
>         }
>     }
>     packagingOptions {
>         exclude 'META-INF/LICENSE'
>         exclude 'META-INF/NOTICE'
>     }
> }
> dependencies {
>     compile fileTree(dir: 'libs', include: ['*.jar'])
>     compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.0-rc2'
>     compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.0-rc2'
> }
> {noformat}



--
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