Tom, why do you think FXML on mobiles is a bad idea? Performance? -----Original Message----- From: openjfx-dev-boun...@openjdk.java.net [mailto:openjfx-dev-boun...@openjdk.java.net] On Behalf Of Tom Schindl Sent: Wednesday, 31 July 2013 16:29 To: Niklas Therning Cc: openjfx-dev@openjdk.java.net Mailing Subject: Re: JavaFX and iOS - it will remain a dream
I don't think it is a good idea to use fxml on embedded and mobile, we are working on a fxml => java converter so you can add it to your build process. Tom Von meinem iPhone gesendet Am 31.07.2013 um 08:11 schrieb Niklas Therning <nik...@therning.org>: >>>> after many days trying to really build iOS apps with JavaFX and >>>> RoboVM >> or >>>> Avian I’m very frustrated because of the following things: >>>> >>>> Based on RoboVM, JavaFX on iOS runs unacceptable slow - I don’t >>>> know >> the >>>> reason - maybe it’s the rendering model of JavaFX - maybe it’s the >>>> currently unoptimized RoboVM One big problem of RoboVM is it’s >>>> dependence of the Android library, it does not support the OpenJDK. >>>> That’s a big reason for many many >> problems >>>> when using JavaFX. So currently it’s not possible to use fxml files >>>> (FXMLoader) because of the missing Stax xml parser and classes like >>>> XMLInputFactory in the android library… > > There's now a compatibility library for the jfx78 backport which > includes the missing sun.* classes from OpenJDK [1]. So that will not > be a problem when running on RoboVM/Android. Daniel Zwolenski is > working on getting this into Maven which will make it nice and easy to > develop with RoboVM+OpenJFX. > > FXMLLoader relies an StAX and the Java Scripting API. Those can both > be made to work on RoboVM/Android. The POM of the compat project [1] > contains optional dependencies on the StAX API and JSR 223 API. For > StAX you'll also need a StAX provider [2][3]. For scripting you'll > need a JSR 223 implementation of the scripting language you're using, > like Rhino for JavaScript [4][5]. Please note that I haven't tested > FXML but it should work (in theory at least ;-) ). Please give it a > go. It will be a great blog story if you can make it work on iOS. > > As for the performance issues with RoboVM+OpenJFX: those WILL be addressed! > You can either wait for it to happen or you can help out. One way to > do that would be sample code that exercises the code paths that need > to be optimized (e.g. the button rendering you posted about earlier). > Preferably the sample should run repeatedly without user interaction. > You should then be able to run Apple's Instruments application to > profile this sample. This will help us determine what needs to be optimized. > > /Niklas > > [1] https://github.com/robovm/robovm-jfx78-compat > [2] https://github.com/FasterXML/aalto-xml > [3] http://woodstox.codehaus.org/ > [4] https://developer.mozilla.org/en-US/docs/Rhino > [5] > https://java.net/projects/scripting/sources/svn/show/trunk/engines/javascript?rev=236