[android-developers] Re: Getting android multimodal - org.apache.commons.scxml
I have been working on getting commons.scxml running on android. Today I got the stopwatch up and running. Since Android does not provide a full j2se I had to deploy / modify lots of libraries. i.e. i used apache harmony for getting a java.beans implementation. I had to modify java.beans and org.commons.harmony.beans classes to get rid of dependencies to java.awt and java.swing. I created a jar named scxmlAndroidDependencies.jar that holds all modified packages. I did some screenshots of the stopwatch, you can find them here: http://ostblock.kicks-ass.net/scxmlOnAndroid/android_1.jpg http://ostblock.kicks-ass.net/scxmlOnAndroid/android_2.jpg http://ostblock.kicks-ass.net/scxmlOnAndroid/android_3.jpg http://ostblock.kicks-ass.net/scxmlOnAndroid/android_4.jpg Also you can get the eclipse project I worked on. I uploaded it since my webserver just has a dsl uplink. http://www.FreeUploadShare.com/DOWNLOAD/3e5dc1319/scxmlOnAndroid_eclipse_project.zip Plase use the ant script to build the project, the ADT plugin will not tranfere java.* package classes to .dex due to a missing --core- library option. The project is based on Google Android SDK 1.0_r1. The project justs includes the library binaries, if someone is interested in the sources let me know. I'll upload them as well. On 24 Sep., 23:39, Jakob Sachse [EMAIL PROTECTED] wrote: Mark Murphy wrote: If you are including xml-apis in your build, that might conflict with existing DOM and SAX implementations in Android. Try removing xml-apis from the build and see what happens. removing xml-apis from the build path results in errors in a few scxml classes. One of which is SCXMLSerializer, I think i could spare this since the Serializer is only called from some test classes. More tricky is that it also breaks Builtin.java which is a central class within scxml. The only class needed from xml-apis is the javax.xml.transform.TransformerException The TransformerException is thrown by org.apache.xpath.XPathAPI which itself is part of xalan, which i still have in the build path. But wouldn't that mean that the hole of xalan is incompatible to android? Or the other way around, if xalan works on android it would mean that its inside use of java.xml.* succeeds. And that hence i could find a way making it work for me as well. Is there anyone who used xalan on android? On 24 Sep., 16:14, Mark Murphy [EMAIL PROTECTED] wrote: Jakob Sachse wrote: Mark Murphy wrote: If that does not clear up your problem, you can try merging the commons.scxml source into your own project's source tree well, basicly thats what i have done so far Oh. Sorry, missed that. though, i will try to build the jar as you recommended. Even if the problem, as far as i see it comes mainly from the javax.xml package which seems to collide with the Android SDK in some way. Do you have all the source code to all the commons-scxml dependencies? If not -- meaning you have commons-scxml source but are still using third-party JARs -- start trying to introduce those, either fully into your project, or simply recompiling them using your own Java compiler. Or, get rid of dependencies that may collide with what is in the Android SDK/ For example, according to the dependency chart: http://commons.apache.org/scxml/dependencies.html commons-scxml depends upon Xalan, which depends upon xml-apis. If you are including xml-apis in your build, that might conflict with existing DOM and SAX implementations in Android. Try removing xml-apis from the build and see what happens. -- Mark Murphy (a Commons Guy)http://commonsware.com _The Busy Coder's Guide to Android Development_ Version 1.2 Published! --~--~-~--~~~---~--~~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Getting android multimodal - org.apache.commons.scxml
Janosch wrote: I think this is due to xml-apis.jar; it includes the javax.xml package which isn't fully available in android core. Is there anything I can do, try or fix? I am feeling clueless at this point. Maybe I am trying something impossible. The good news is that the package you are trying to use (commons.scxml) is open source. First, just try downloading the commons.scxml source code and building it on your machine with your own Java compiler, then use the JAR file you just compiled in your Android app instead of any binary distribution from the commons.scxml project. I ran into problems with Beanshell (http://beanshell.org) which this technique solved. This assumes, though, that you're using a 1.5 or greater Java compiler -- I have the sneaking suspicion this error comes from older compiled JARs (e.g., 1.4.x). If that does not clear up your problem, you can try merging the commons.scxml source into your own project's source tree, and try building it as a whole, though I am not certain that will improve matters any. -- Mark Murphy (a Commons Guy) http://commonsware.com _The Busy Coder's Guide to Android Development_ Version 1.2 Published! --~--~-~--~~~---~--~~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Getting android multimodal - org.apache.commons.scxml
Mark Murphy wrote: If that does not clear up your problem, you can try merging the commons.scxml source into your own project's source tree well, basicly thats what i have done so far Janosch wrote: Meanwhile I was turning to the source code of commons.scxml so that i could watch it's unsolved problemens though, i will try to build the jar as you recommended. Even if the problem, as far as i see it comes mainly from the javax.xml package which seems to collide with the Android SDK in some way. On 24 Sep., 14:21, Mark Murphy [EMAIL PROTECTED] wrote: Janosch wrote: I think this is due to xml-apis.jar; it includes the javax.xml package which isn't fully available in android core. Is there anything I can do, try or fix? I am feeling clueless at this point. Maybe I am trying something impossible. The good news is that the package you are trying to use (commons.scxml) is open source. First, just try downloading the commons.scxml source code and building it on your machine with your own Java compiler, then use the JAR file you just compiled in your Android app instead of any binary distribution from the commons.scxml project. I ran into problems with Beanshell (http://beanshell.org) which this technique solved. This assumes, though, that you're using a 1.5 or greater Java compiler -- I have the sneaking suspicion this error comes from older compiled JARs (e.g., 1.4.x). If that does not clear up your problem, you can try merging the commons.scxml source into your own project's source tree, and try building it as a whole, though I am not certain that will improve matters any. -- Mark Murphy (a Commons Guy)http://commonsware.com _The Busy Coder's Guide to Android Development_ Version 1.2 Published! --~--~-~--~~~---~--~~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Getting android multimodal - org.apache.commons.scxml
Jakob Sachse wrote: Mark Murphy wrote: If that does not clear up your problem, you can try merging the commons.scxml source into your own project's source tree well, basicly thats what i have done so far Oh. Sorry, missed that. though, i will try to build the jar as you recommended. Even if the problem, as far as i see it comes mainly from the javax.xml package which seems to collide with the Android SDK in some way. Do you have all the source code to all the commons-scxml dependencies? If not -- meaning you have commons-scxml source but are still using third-party JARs -- start trying to introduce those, either fully into your project, or simply recompiling them using your own Java compiler. Or, get rid of dependencies that may collide with what is in the Android SDK/ For example, according to the dependency chart: http://commons.apache.org/scxml/dependencies.html commons-scxml depends upon Xalan, which depends upon xml-apis. If you are including xml-apis in your build, that might conflict with existing DOM and SAX implementations in Android. Try removing xml-apis from the build and see what happens. -- Mark Murphy (a Commons Guy) http://commonsware.com _The Busy Coder's Guide to Android Development_ Version 1.2 Published! --~--~-~--~~~---~--~~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Getting android multimodal - org.apache.commons.scxml
Mark Murphy wrote: If you are including xml-apis in your build, that might conflict with existing DOM and SAX implementations in Android. Try removing xml-apis from the build and see what happens. removing xml-apis from the build path results in errors in a few scxml classes. One of which is SCXMLSerializer, I think i could spare this since the Serializer is only called from some test classes. More tricky is that it also breaks Builtin.java which is a central class within scxml. The only class needed from xml-apis is the javax.xml.transform.TransformerException The TransformerException is thrown by org.apache.xpath.XPathAPI which itself is part of xalan, which i still have in the build path. But wouldn't that mean that the hole of xalan is incompatible to android? Or the other way around, if xalan works on android it would mean that its inside use of java.xml.* succeeds. And that hence i could find a way making it work for me as well. Is there anyone who used xalan on android? On 24 Sep., 16:14, Mark Murphy [EMAIL PROTECTED] wrote: Jakob Sachse wrote: Mark Murphy wrote: If that does not clear up your problem, you can try merging the commons.scxml source into your own project's source tree well, basicly thats what i have done so far Oh. Sorry, missed that. though, i will try to build the jar as you recommended. Even if the problem, as far as i see it comes mainly from the javax.xml package which seems to collide with the Android SDK in some way. Do you have all the source code to all the commons-scxml dependencies? If not -- meaning you have commons-scxml source but are still using third-party JARs -- start trying to introduce those, either fully into your project, or simply recompiling them using your own Java compiler. Or, get rid of dependencies that may collide with what is in the Android SDK/ For example, according to the dependency chart: http://commons.apache.org/scxml/dependencies.html commons-scxml depends upon Xalan, which depends upon xml-apis. If you are including xml-apis in your build, that might conflict with existing DOM and SAX implementations in Android. Try removing xml-apis from the build and see what happens. -- Mark Murphy (a Commons Guy)http://commonsware.com _The Busy Coder's Guide to Android Development_ Version 1.2 Published! --~--~-~--~~~---~--~~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---