Done tasks * Get all java sources from existing dalvik framework * Add additional classes from open jdk (licensed under GNU incompatible with Apache license, which * Generate the following packages list with the tool quoted in [1]. Here is the full list: tuscany/src/main/java/dalvik/system \ tuscany/src/main/java/javax/net/ssl \ tuscany/src/main/java/java/nio/charset/spi \ tuscany/src/main/java/javax/security/cert \ tuscany/src/main/java/java/util/jar \ tuscany/src/main/java/sun/reflect/misc \ tuscany/src/main/java/javax/xml/transform \ tuscany/src/main/java/javax/xml/stream/events \ tuscany/src/main/java/org/kxml2/wap/wml \ tuscany/src/main/java/javax/crypto \ tuscany/src/main/java/javax/xml/transform/stream \ tuscany/src/main/java/java/lang \ tuscany/src/main/java/javax/xml/parsers \ tuscany/src/main/java/org/kxml2/wap/wv \ tuscany/src/main/java/org/kxml2/wap/syncml \ tuscany/src/main/java/java/rmi \ tuscany/src/main/java/org/xml/sax/helpers \ tuscany/src/main/java/javax/security/auth/callback \ tuscany/src/main/java/javax/xml/bind/util \ tuscany/src/main/java/java/util/concurrent/locks \ tuscany/src/main/java/junit/extensions \ tuscany/src/main/java/java/beans/beancontext \ tuscany/src/main/java/javax/xml/bind/annotation/adapters \ tuscany/src/main/java/java/util/concurrent \ tuscany/src/main/java/javax/xml/bind \ tuscany/src/main/java/java/nio/charset \ tuscany/src/main/java/junit/framework \ tuscany/src/main/java/org/xmlpull/v1 \ tuscany/src/main/java/javax/xml/bind/attachment \ tuscany/src/main/java/org/xml/sax \ tuscany/src/main/java/java/security/spec \ tuscany/src/main/java/SQLite/JDBC2y \ tuscany/src/main/java/javax/crypto/interfaces \ tuscany/src/main/java/org/xmlpull/v1/sax2 \ tuscany/src/main/java/SQLite \ tuscany/src/main/java/sun/awt \ tuscany/src/main/java/org/w3c/dom/ls \ tuscany/src/main/java/javax/jws \ tuscany/src/main/java/java/lang/reflect \ tuscany/src/main/java/org/kxml2/io \ tuscany/src/main/java/java/text \ tuscany/src/main/java/java/security/acl \ tuscany/src/main/java/javax/xml/bind/helpers \ tuscany/src/main/java/java/security/cert \ tuscany/src/main/java/javax/activation \ tuscany/src/main/java/java/util \ tuscany/src/main/java/java/util/prefs \ tuscany/src/main/java/javax/xml/stream \ tuscany/src/main/java/org/openssl \ tuscany/src/main/java/org/kxml2/kdom \ tuscany/src/main/java/sun/reflect \ tuscany/src/main/java/javax/xml/namespace \ tuscany/src/main/java/javax/crypto/spec \ tuscany/src/main/java/javax/xml/transform/dom \ tuscany/src/main/java/java/awt/datatransfer \ tuscany/src/main/java/org/xml/sax/ext \ tuscany/src/main/java/javax/xml \ tuscany/src/main/java/java/net \ tuscany/src/main/java/java/security/interfaces \ tuscany/src/main/java/dalvik/annotation \ tuscany/src/main/java/javax/xml/stream/util \ tuscany/src/main/java/java/awt \ tuscany/src/main/java/java/beans \ tuscany/src/main/java/java/io \ tuscany/src/main/java/java/nio/channels \ tuscany/src/main/java/javax/xml/bind/annotation \ tuscany/src/main/java/java/security \ tuscany/src/main/java/java/sql \ tuscany/src/main/java/javax/security/auth/x500 \ tuscany/src/main/java/java/nio/channels/spi \ tuscany/src/main/java/com/sun/beans/finder \ tuscany/src/main/java/org/json \ tuscany/src/main/java/javax/jws/soap \ tuscany/src/main/java/com/sun/activation/registries \ tuscany/src/main/java/java/util/zip \ tuscany/src/main/java/javax/xml/transform/sax \ tuscany/src/main/java/javax/xml/validation \ tuscany/src/main/java/java/util/regex \ tuscany/src/main/java/org/w3c/dom \ tuscany/src/main/java/javax/net \ tuscany/src/main/java/dalvik/bytecode \ tuscany/src/main/java/javax/security/auth/login \ tuscany/src/main/java/java/lang/ref \ tuscany/src/main/java/java/lang/annotation \ tuscany/src/main/java/java/nio \ tuscany/src/main/java/java/awt/font \ tuscany/src/main/java/java/util/logging \ tuscany/src/main/java/javax/xml/transform/stax \ tuscany/src/main/java/java/util/concurrent/atomic \ tuscany/src/main/java/java/math \ tuscany/src/main/java/org/kxml2/wap \ tuscany/src/main/java/sun/awt/datatransfer \ tuscany/src/main/java/sun/misc \ tuscany/src/main/java/javax/sql \ tuscany/src/main/java/javax/security/auth \ tuscany/src/main/java/javax/annotation \ tuscany/src/main/java/javax/annotation/security \ tuscany/src/main/java/javax/transaction \ tuscany/src/main/java/javax/transaction/xa \ tuscany/src/main/java/javax/xml/ws/soap \ tuscany/src/main/java/javax/xml/ws/http \ tuscany/src/main/java/javax/xml/ws \ tuscany/src/main/java/javax/xml/ws/handler \ tuscany/src/main/java/javax/xml/ws/spi \ tuscany/src/main/java/javax/xml/ws/wsaddressing \ tuscany/src/main/java/javax/xml/ws/handler/soap \ tuscany/src/main/java/javax/xml/soap \ tuscany/src/main/java/javax/xml/datatype \ tuscany/src/main/java/com/sun/xml/internal/stream/buffer/sax \ tuscany/src/main/java/com/sun/xml/internal/org/jvnet/staxex \ tuscany/src/main/java/com/sun/xml/internal/stream \ tuscany/src/main/java/com/sun/xml/internal/stream/buffer \ tuscany/src/main/java/com/sun/xml/internal/stream/buffer/stax * Follow steps in [2] and perform several builds during weeks until dependancies issues are all resolved for a new android version of the sample calculator. This new version instead of referencing the the modules’ project, reference the all modules jars in its build path except host-android and binding*. I used to work with two instances of eclipse opened, each of them pointing to a specific workspace (Tuscany modules for the first one, and the calculator project in the second). It’s now up to NullPointer, ServiceRuntime and other exceptions to be raised, and get solved. For debugging purpose, i changed the reference to jre from some of the modules to a reference to android.jar, and add some android-friendly Log instructions to follow execution. At each step, after adding log instructions, i rebuilt the jars for all modified tuscany’s modules, and re-import them in the calculator project. I spent several days tweaking the extensibility module for resolving issues like: “Non defined Method call on interface objects, while the object hasn’t been initialized with an implementing class.” I even don’t know how it used to run on desktop machine. I’ve finally discovered that “RuntimeBootstrapper” class where everything seems to be called from. I made couple of changes like : UtilityExtensionPoint utilities = new DefaultUtilityExtensionPoint(registry); workScheduler = utilities.getUtility(DefaultWorkScheduler.class); InterfaceContractMapper mapper = utilities.getUtility(InterfaceContractMapperImpl.class); Till i get blocked when up to factories objects. Luciano told me couple of weeks ago to worry about licensing, and i’ve downloaded apache harmony. I thought i’ll found all the classes i’ve included in the new android.jar version, but it seems like they aren’t (Serious matter). I then put aside all what i’ve been doing so far, and got back to the beginning. Why aren’t javax hierarchy packages not importable for external jars onto android’s project. I’ve launch a search of “” in the android sources folder by doing this: find . | xargs grep ‘Attempt to include a core’ > /home/lookouster/Desktop/where.txt
And found out that it’s in the dx utility that javax, and java new classes are blocked. I’m just wondering why is google blocking these, while org.apache stuff or anything else could be import even though they exist in the default dalvik core library. What i intend now to do is the disable that and re-run it. Stay tuned! [1]: Package list generator<http://lookouster.org/blog/gsoc-09-project/stage3/#> [2]: Extending dalvik<http://lookouster.org/blog/2009/07/27/extending-dalviks-java-framework/> -- Best Regards Lookman SANNI http://blog.lookouster.org MSBI Intern at Umanis Tours Services;
