Hi Oscar, I was indeed using the sca modules not from the sandbox. As you suggested, I removed the tuscany-contribution-impl from my workspace and added the version you uploaded to the sandbox. Then, I uncommented the lines in
org.apache.tuscany.sca.implementation.java.module.JavaRuntimeModuleActivator following the comments pointing out why those lines had been commented. I'm no longer getting the ClassNotFoundException. However, it's getting stuck somewhere else (before getting there I guess)...I think this is the case because before and after commenting the code I get the same error in the Android emulator, an InstantiationException [1]. Have you debugged to check exactly where this exception is being thrown? I have done the procedure I previously described again and I got it "running" as expected, which means, running till the expected exception is thrown. I also started tinkering with retrotranslator. First I tried doing it with Ant, but it seems that in order to build I have to include the whole tuscany projects in a way similar to how I now have in Eclipse. I also tried making a jar out of org.apache.tuscany.sca.implementation.java.module.JavaRuntimeModuleActivator and then feeding it to retrotranslator but unfortunately it's not translating anything, as shown below. Voyager-2:Retrotranslator-1.2.6-bin ocastaneda$ java -jar retrotranslator-transformer-1.2.6.jar -srcjar JavaRuntimeModuleActivator.jar -target 1.5 -reflection safe -stripannot -classpath retrotranslator-android-1.2.6.jar Processing 136 file(s) in JavaRuntimeModuleActivator.jar. Transformed 0 file(s). There's also a maven plugin, so I might try that...but first I'll give Ant another go. Hopefully Google will release a new SDK soon, otherwise as you say...retrotranslator will have to be the workaround to proceed with our project ;-) Unfortunately the rumors say the new SDK version will not be released until july 28th :S. So, it's really good you have already started working on the retrotranslator, it will probably be the best workaround for the annotations problem till the next SDK release. I suggest you to forget about the build process right now, before, check if this retrotranslator works and if it really works on android platform. I´m really getting upset with Android, even its API methods does not work as expected :@. Anyway, try initially to compile a simple class (coded by you), which contains annotations, and access these annotations. If it works, make it more complex and test again, do it until you reach a scenario as complex as the SCA (a lot of external jars with annotated classes accessed by the other external jars and the Android app). Got it? : ) Regards, Adriano Crestani On Tue, May 20, 2008 at 1:53 PM, Oscar Castaneda < [EMAIL PROTECTED]> wrote: > Hi Adriano, > > I was indeed using the sca modules not from the sandbox. As you suggested, > I > removed the tuscany-contribution-impl from my workspace and added the > version you uploaded to the sandbox. Then, I uncommented the lines in > > > org.apache.tuscany.sca.implementation.java.module.JavaRuntimeModuleActivator > > following the comments pointing out why those lines had been commented. I'm > no longer getting the ClassNotFoundException. However, it's getting stuck > somewhere else (before getting there I guess)...I think this is the case > because before and after commenting the code I get the same error in the > Android emulator, an InstantiationException [1]. > > I also started tinkering with retrotranslator. First I tried doing it with > Ant, but it seems that in order to build I have to include the whole > tuscany > projects in a way similar to how I now have in Eclipse. I also tried making > a jar out of > > > org.apache.tuscany.sca.implementation.java.module.JavaRuntimeModuleActivator > > and then feeding it to retrotranslator but unfortunately it's not > translating anything, as shown below. > > Voyager-2:Retrotranslator-1.2.6-bin ocastaneda$ java -jar > retrotranslator-transformer-1.2.6.jar -srcjar > JavaRuntimeModuleActivator.jar > -target 1.5 -reflection safe -stripannot -classpath > retrotranslator-android-1.2.6.jar > Processing 136 file(s) in JavaRuntimeModuleActivator.jar. > Transformed 0 file(s). > > There's also a maven plugin, so I might try that...but first I'll give Ant > another go. Hopefully Google will release a new SDK soon, otherwise as you > say...retrotranslator will have to be the workaround to proceed with our > project ;-) > > Thanks again for all your help...I'm getting ready for the official start > :-) > > [1] http://androidindelft.googlepages.com/20may2008.html > > > > On Fri, May 16, 2008 at 12:20 PM, Adriano Crestani < > [EMAIL PROTECTED]> wrote: > > > Hi Oscar, > > > > My mistake again, the eclipse project files of contribution-impl module > > were > > not uploaded, so you are probably using the modules you have downloaded > > from > > the sca modules. If you remove the tuscany-contribution-impl from your > > workspace and add this module from the sandbox it will probably work. > > Anyway, you will need to update your trunk again to get the project files > > I'm uploading right now ; ) > > > > OK, if you wanna try the retrotranslator as a solution here is a tip: > most > > of the code that were using the Reflection API was commented on > > > > > org.apache.tuscany.sca.implementation.java.module.JavaRuntimeModuleActivator > > class, you just need to edit this class and remove the commented code > (it's > > described there). > > > > So, if you uncomment the code and the retrotranslador successfuly work, > and > > I hope it will, you will reach the > > org.apache.tuscany.sca.binding.sca.impl.RuntimeSCAServiceBindingProvider > > constructor and it should run OK. Exactly on this constructor I'm getting > a > > NPE when the code described above is commented. > > > > About the ant, go on and use it. Further we can evaluate better where we > > place it in the entire SCA build process. BTW, we even dont know if we > will > > still be using the retrotranslator in future, right?! : ) > > > > Use the retrotranslator may help us a lot to workaround this problem for > > now > > and go on with our project ; ) > > > > Kind Regards, > > Adriano Crestani > > > > On Wed, May 14, 2008 at 2:57 PM, Oscar Castaneda < > > [EMAIL PROTECTED]> wrote: > > > > > Hi Adriano, > > > > > > Thanks alot for your answers. I was able to build the entire workspace > > from > > > your instructions. When running calculator-android as an "Android > > > application" I'm getting a ClassNotFoundException [1] for > > > > > > > > > org.apache.tuscany.sca.contribution.processor.impl.DexContributionProcessor. > > > Is the exception you referred to in your original email? > > > > > > ...when > > > > you run the calculator-android project as an "Android application" > you > > > > should get an exception, that was generated initially by a NPE thrown > > by > > > > > > org.apache.tuscany.sca.binding.sca.impl.RuntimeSCAServiceBindingProvider > > > > constructor. This is caused because the latest Android SDK does not > > > support > > > > the Reflection API yet. So, the SCA cannot check the @Reference > > > annotations > > > > (I commented the code which tries to read the annotations, so when > the > > > > execution reach this constructor it throws the NPE). > > > > > > > > > > > > > Searching for the class in the exception I'm getting I found > > > org.apache.tuscany.sca.extensibility.ServiceDiscovery. In > > getServiceClasses > > > it loads the service class I'm getting problems with when running > > > calculator-android as an "Android application": > > > > > > > > > > > > "org.apache.tuscany.sca.contribution.processor.impl.DexContributionProcessor;type=application/x-dex" > > > > > > > > > I couldn't find the corresponding java file in my imported workspace > and > > > found that there is no package like > > > org.apache.tuscany.sca.contribution.processor.impl. > > > > > > Am I missing something? Or are these the errors you would expect? > > > > > > I would like to get to the point where I get the exception you > described > > > and > > > try to run retrotranslator from there. However, as I'm using the ADT > > plugin > > > in eclipse I would need to extract code that "declares or analyzes > > > annotations you may extract it into a separate library that can be > > > processed > > > with Retrotranslator and added to the main project." That is, unless I > > use > > > Ant, in which case I would only need to add a few lines to build.xml. > I'm > > > continuing to look into this, any thoughts are more than welcome :-) > > > > > > [1] http://delftandroid.googlepages.com/14may2008.html > > > > > > > > > On Mon, May 12, 2008 at 9:13 AM, Adriano Crestani < > > > [EMAIL PROTECTED]> wrote: > > > > > > > Hi, > > > > > > > > Thanks all for the feedback ; ) > > > > > > > > At first, I want to correct one mistake, on the first step I > described > > on > > > > my > > > > previous email, I should not have added the word "install", it > probably > > > > would lead the reader to run the "mvn clean install" in the > downloaded > > > > files, as Oscar did. Also, on this same step, the code should not be > > > > downloaded from [1], but from [2]. > > > > > > > > Simon: > > > > Thanks for the link ; ). As the Sun Java source codes are under CDDL > > 1.0 > > > > license, it's only needed to include the CDDL license header on each > > > file, > > > > and it's already done : ) > > > > > > > > Jean: > > > > I think it is better to keep the code in the sandbox for now. At > first, > > > > it's > > > > not working on the current SCA modules revision yet. And also, I'm > > > > commenting many lines at some modules just to get a "first run" of > > > > calculator-sample to further evaluate why and how this commented > lines > > > will > > > > be adapted to be compatible with both: SCA Java and SCA Android. > > > > > > > > Oscar: > > > > > > > > - Are host-android and core-android a part of calculator-android? > > > > > > > > What do you mean when you say "part"? They are used by > > > calculator-android, > > > > and will prabably be added to tuscany sca modules in future > > > > > > > > - Should the calculator-android included in [1] have included an > > > > "AndroidManifest.xml" file? > > > > > > > > Sorry, my mistake, I forgot to add to svn the eclipse project files > of > > > > these > > > > projects. I have already commited these files and if you update your > > > trunk > > > > you will get them ; ). So, delete the ones you have created. > > > > > > > > - How can I fix the build errors? Is there something else needed in > > > > addition > > > > to including the Android Library? > > > > > > > > No, the Android library is really simples, it only contains the > > > android.jar > > > > file located in your Android SDK. > > > > > > > > Please, do not run the "mvn clean build" and "mvn -Peclipse > > > > eclipse:eclipse" > > > > commands on the sandbox files, the eclipse project files are already > in > > > > modules and you should build the modules using the eclipse for now. > The > > > > maven config files are not updated yet with the modifications I have > > done > > > > on > > > > these modules, so they will not generate the correct project files, > > > worse, > > > > they will override the ones I have created. > > > > > > > > Then, clean and build your entire workspace, if you still get any > > errors, > > > > let me know ; ) > > > > > > > > - Should I import 'tuscany-databinding-saxon'? Or, why should this > not > > be > > > > imported? > > > > > > > > It seems the revision I suggested already had the saxon module > removed > > > from > > > > repo. So, you mistakenly removed another one that shouldn´t. Please, > > > import > > > > the databinding-saxon module again into your workspace. > > > > > > > > > > > > Regards, > > > > Adriano Crestani > > > > > > > > > > > > [1] - https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/< > > > > > > > > > > https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/mobile-android/android-jdk-classes/src/javax/xml/ > > > > > > > > > [2] - > > > > > > > > > > https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/mobile-android > > > > > > > > On Sun, May 11, 2008 at 11:05 AM, Jean-Sebastien Delfino < > > > > [EMAIL PROTECTED]> wrote: > > > > > > > > > Mike Edwards wrote: > > > > > > > > > > > Jean-Sebastien Delfino wrote: > > > > > > > > > > > > > Oscar Castaneda wrote: > > > > > > > > > > > > > > 1. Downloaded the modified code from [1] and installed as > shown > > > > > > > > below: > > > > > > > > > > > > > > > > svn checkout > > > > > > > > https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/ > > > > > > > > > > > > > > > > cd mobile-android > > > > > > > > > > > > > > > > > > > > > > > If there's no objection from others, I'd be happy to see this > > code > > > > > > > move from sandbox to trunk as we now have several people doing > > > > development > > > > > > > on this android integration. > > > > > > > > > > > > > > Adriano, you could start with something like > > trunk/java/sca/android > > > > > > > and later progressively try to converge the code with the code > in > > > > trunk, > > > > > > > with architected plug points for the android specific code etc. > > > > > > > > > > > > > > Thoughts? > > > > > > > > > > > > > > > > > > > I assume that moving to trunk does not also imply "making part of > > the > > > > > > main build"? > > > > > > > > > > > > I'd be a bit concerned at experimental code entering the build at > > > this > > > > > > stage. > > > > > > > > > > > > > > > > > > Yours, Mike. > > > > > > > > > > > > > > > > I think it's business as usual, code that doesn't work does not go > in > > > the > > > > > main build, code that's getting stable can go in the main build at > > some > > > > > point when people have no specific objections, and different > profiles > > > can > > > > be > > > > > used to subset particular builds. > > > > > > > > > > -- > > > > > Jean-Sebastien > > > > > > > > > > > > > > > > > > > > > -- > > > best, > > > -oscar > > > > > > Oscar Castañeda > > > > > > > > > -- > best, > -oscar > > Oscar Castañeda >