The Next Great Thing: An Application Framework

Tom Schindl tom.schindl at
Tue Feb 21 02:28:18 PST 2012

Am 21.02.12 11:03, schrieb Uclio Work:
> Hi Tom,
> Il 21/02/2012 09:46, Tom Schindl ha scritto:
>> The problem I see with making the original source code directly OSGi
>> aware is that even if the Oracle team would want to do it:
>> a) they have to switch to OSGi to not introduce regressions or
>> b) we as a community have to test and fix OSGi specific problems
>>     which is a bit of a problem until the whole stack is opensourced
>>     and even its probably not easy to keep it compatible
> Why switching to OSGi ? No need IMHO. You can make JFX OSGi-aware pretty
> easily repackaging it by yourself with BND or inside a pom while
> building your app.

... because they would introduce problems they won't notice when running
outside OSGi. Take the 2.0 FXMLLoader example which works perfectly in
an outside OSGi-World because there's one classloader which sees everything.

Other problems are e.g. dealing with CSS-Files (e.g. in pre 2.0 they
didn't used the URLs appropriately and so OSGi-Paths didn't work
appropiately) and resources defined in there like images, ... but also
Java-Classes (-fx-skin!).

So if they are not running in OSGi they will most likely introduce other
such problematic classloading things - some of them fixable e.g. using
tricks like setting modifying the ContextClassLoader (the FXMLLoader
problem in 2.0) and others unfixable like the -fx-skin stuff in CSS.

Writing a library without using it on OSGi while doing so will lead to
all sorts of problems - and if the JavaFX team would integrate our
modifications into their source we are the ones responsible to ensure
they'll work in future versions as well.

Repackaging JavaFX for OSGi is on my plan items for some of the next
releases of e(fx)clipse so I've no experience yet with it my target is
to support different deployment styles (load it from the installed
source, load it from a local path on the filesystem, distribute it as an
OSGi-Bundle with your app).

You did not yet mention what you had to modify e.g. in the
NativeLibLoader to make things work.


B e s t S o l u t i o n . a t                        EDV Systemhaus GmbH
tom schindl                 geschäftsführer/CEO
eduard-bodem-gasse 5-7/1   A-6020 innsbruck     fax      ++43 512 935833                      phone    ++43 512 935834

More information about the openjfx-dev mailing list