I think I found the problem -- Android has bugs in it with Reflection
prior to version 2.3

http://code.google.com/p/android/issues/detail?id=6636

I ported my QpidDroid project to Android 2.3 and it looks like JNDI is
successfully creating the InitialContext now with the QPID connection
params



On Jan 19, 11:44 am, EnNuages <rifflech...@gmail.com> wrote:
> Hi Android folks,
>
> I'm trying to port:  Apache Qpid Client, JMS and JNDI -- to Android.
> I'm able to get a successful compile/build of my QpidDroid project
> when running the ant debug install targets after passing Dalvik the --
> core-library parameter to allow javax packages for JMS/JNDI.  I'm
> hoping to do this before considering repackaging/refactoring javax
> classes into a different package namespace using jarjar.
>
> I think this is legally legit because I'm using the old/first seperate
> JNDI jar currently provided by Oracle's website.  I'm using the JMS
> jar that comes with Apache Geronimo in Qpid,.. but I think it's also
> available from Oracle as a seperate download.  My dev environment uses
> Android platform 2.1 and jdk 1.6.
>
> The problem is, it seems it currently cannot instantiate my custom
> jndi connection factory: PropertiesFileInitialContextFactory.  This is
> a .java source file in my QpidDroid project(not a .class in a libs
> jar)   (I extracted the class out of the qpidClient jar).
>
> Would someone have any idea as to why it cannot be instantiated here?
> I was wondering if proguard might be breaking reflection,... but I'm
> building it with the debug ant task,.. so I'm thinking proguard
> shouldn't be running at all.  The exception occurs when I run the
> installed app on the emulator.  I have the Apache Qpid service running
> on the same machine with the default port that it uses.
>
> 01-18 18:05:16.966: W/System.err(296): [Root exception is
> java.lang.ClassNotFoundException:
> org.apache.qpid.jndi.PropertiesFileInitialContextFactory]javax.naming.NoIni 
> tialContextException:
> Cannot instantiate class:
> org.apache.qpid.jndi.PropertiesFileInitialContextFactory
> 01-18 18:05:17.006: W/System.err(296):  at
> javax.naming.spi.NamingManager.getDefaultInitialContextFactory(NamingManage 
> r.java:
> 720)
> 01-18 18:05:17.006: W/System.err(296):  at
> javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:
> 768)
> 01-18 18:05:17.016: W/System.err(296):  at
> javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:169)
> 01-18 18:05:17.016: W/System.err(296):  at
> javax.naming.InitialContext.<init>(InitialContext.java:146)
> 01-18 18:05:17.016: W/System.err(296):  at
> org.rif.QpidDroid.Hello.runTest(Hello.java:56)
>
> Thanks for any tips!

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to