[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] Java8 and JavaFX8

Hi Tom,

Yes I'd like to join the IRC chat.

We will need to define new Execution Envs for the Java 8 compact profiles, if and when they are specified by the JCP. This is something for the OSGi CPEG to look into. I don't think it makes sense for users to define their own EEs. I guess PDE should be taking the values of "org.osgi.framework.system.packages" and "org.osgi.framework.system.packages.extra" into account? Bndtools already does this, incidentally... ;-)

Regards
Neil

6 November 2012 22:35
Hi Tom,

I'll try to catch you on IRC on Friday. I really like to stay away from
framework hooks and all the stuff (p2 magic).

I know for sure that I can fix all equinox problems the way I fix them
today :-)

Just out of curiosity can one provide ones own Execution Environment?
The next problem we face after we have solved the runtime problem is
tooling. PDE currently only takes the Execution Environment into
consideration when calculation the access rules for packages from the
system.bundle - although I'd favor fixing PDE :-)

It is just a thought experiment. What happens if the packages are part
of the profile but on the extension-classpath, would equinox fail?

Let's discuss on IRC. Neil do you want to join in which would mean we'd
have to set a more formal date.

Tom


6 November 2012 22:17

I should be available on IRC this Friday or next week.  I'm a bit busy this week at an OSGi F2F meeting.

I imagine you will need to have a framework extension bundle for JavaFX that defines the packages that need to be exported from the javafx namespace.  If such a bundle is installed using p2 I think you can associate a configuration unit that defines the configuration osgi.frameworkParentClassloader=ext must be set for the installation.

So for the Java 8 execution environment profile we would not include the javafx packages as exported automatically by the system bundle.  Instead additional configuration of the framework is required in order to make the use of the extension class loader and export the javafx package.  I can think of some other rather nasty hacks that could be done by using equinox framework hooks.  But I would like to avoid such hacks.

Tom



Inactive hide details 
for Tom Schindl ---11/06/2012 01:59:27 PM---For RCP that would work. The
 problem is that people might useTom Schindl ---11/06/2012 01:59:27 PM---For RCP that would work. The problem is that people might use it in an existing OSGi app like the Ec

From: Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx>
To: Equinox development mailing list <equinox-dev@xxxxxxxxxxx>,
Date: 11/06/2012 01:59 PM
Subject: Re: [equinox-dev] Java8 and JavaFX8
Sent by: equinox-dev-bounces@xxxxxxxxxxx





For RCP that would work. The problem is that people might use it in an existing OSGi app like the Eclipse IDE and there we probably should and can not modify it.

The really problem is caused by Oracle but i'd really don't want to suffer our users from it. Do you have time for an IRC session this or next week to discuss possible solutions?

Tom

Von meinem iPhone gesendet


Am 06.11.2012 um 20:38 schrieb Thomas Watson <
tjwatson@xxxxxxxxxx>:

    How about setting the configuration property osgi.frameworkParentClassloader=ext (see the osgi.frameworkParentClassloaderr option at http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fruntime-options.html&cp=2_1_3_0)

    This should cause the class loader which loads the framework implementation (setup by the equinox.launcher) to use the extension class loader as the parent class loader.  This should allow the system bundle to export the packages available on the extension class path.

    Tom



    <graycol.gif>
    Tom Schindl ---11/06/2012 12:42:54 PM---Hi, To integrate JavaFX2 into Java7 I had to reside to nasty stuff like

    From:
    Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx>
    To:
    equinox-dev@xxxxxxxxxxx,
    Date:
    11/06/2012 12:42 PM
    Subject:
    [equinox-dev] Java8 and JavaFX8
    Sent by:
    equinox-dev-bounces@xxxxxxxxxxx



    Hi,

    To integrate JavaFX2 into Java7 I had to reside to nasty stuff like
    Adapter Hooks but I don't want to go into detail.

    My current concerns are the future. First of all JavaFX 8 although
    shipped with Oracle-JDK8 will not be JSRed so its packages can not get
    part of the Java8 profile.

    It currently looks like they are not getting on the bootclasspath but
    rather pushed into lib/ext. I've done some tests today and it looks like
    this lib/ext stuff is going give us some headaches because this means
    the javafx stuff is not going to be on the bootclasspath which the
    system.bundle delegates to, am I right with this?

    So what could be a runtime-solution? Would a OpenJDK8-Profile which
    exports JavaFX packages help us, or would it ran into the same problem
    that it will delegate to the bootclassloader whereas we'd need to
    consult the extension-classloader?

    Once we figured out how we can solve the problem at the runtime layer we
    can go the next step to tweak PDE in a way that it we can work with it.

    Tom

    --
    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

    http://www.BestSolution.at                      phone    ++43 512 935834
    _______________________________________________
    equinox-dev mailing list

    equinox-dev@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/equinox-dev


    _______________________________________________
    equinox-dev mailing list

    equinox-dev@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/equinox-dev_______________________________________________
    equinox-dev mailing list
    equinox-dev@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/equinox-dev

_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
6 November 2012 19:58
For RCP that would work. The problem is that people might use it in an existing OSGi app like the Eclipse IDE and there we probably should and can not modify it.

The really problem is caused by Oracle but i'd really don't want to suffer our users from it. Do you have time for an IRC session this or next week to discuss possible solutions?

Tom

Von meinem iPhone gesendet

Am 06.11.2012 um 20:38 schrieb Thomas Watson <tjwatson@xxxxxxxxxx>:

How about setting the configuration property osgi.frameworkParentClassloader=ext (see the osgi.frameworkParentClassloaderr option at http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fruntime-options.html&cp=2_1_3_0)

This should cause the class loader which loads the framework implementation (setup by the equinox.launcher) to use the extension class loader as the parent class loader.  This should allow the system bundle to export the packages available on the extension class path.

Tom



<graycol.gif>Tom Schindl ---11/06/2012 12:42:54 PM---Hi, To integrate JavaFX2 into Java7 I had to reside to nasty stuff like

From: Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx>
To: equinox-dev@xxxxxxxxxxx,
Date: 11/06/2012 12:42 PM
Subject: [equinox-dev] Java8 and JavaFX8
Sent by: equinox-dev-bounces@xxxxxxxxxxx





Hi,

To integrate JavaFX2 into Java7 I had to reside to nasty stuff like
Adapter Hooks but I don't want to go into detail.

My current concerns are the future. First of all JavaFX 8 although
shipped with Oracle-JDK8 will not be JSRed so its packages can not get
part of the Java8 profile.

It currently looks like they are not getting on the bootclasspath but
rather pushed into lib/ext. I've done some tests today and it looks like
this lib/ext stuff is going give us some headaches because this means
the javafx stuff is not going to be on the bootclasspath which the
system.bundle delegates to, am I right with this?

So what could be a runtime-solution? Would a OpenJDK8-Profile which
exports JavaFX packages help us, or would it ran into the same problem
that it will delegate to the bootclassloader whereas we'd need to
consult the extension-classloader?

Once we figured out how we can solve the problem at the runtime layer we
can go the next step to tweak PDE in a way that it we can work with it.

Tom

--
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
http://www.BestSolution.at                      phone    ++43 512 935834
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev


_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
6 November 2012 19:38

How about setting the configuration property osgi.frameworkParentClassloader=ext (see the osgi.frameworkParentClassloaderr option at http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fruntime-options.html&cp=2_1_3_0)

This should cause the class loader which loads the framework implementation (setup by the equinox.launcher) to use the extension class loader as the parent class loader.  This should allow the system bundle to export the packages available on the extension class path.

Tom



Inactive hide details 
for Tom Schindl ---11/06/2012 12:42:54 PM---Hi, To integrate JavaFX2 
into Java7 I had to reside to nasty Tom Schindl ---11/06/2012 12:42:54 PM---Hi, To integrate JavaFX2 into Java7 I had to reside to nasty stuff like

From: Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx>
To: equinox-dev@xxxxxxxxxxx,
Date: 11/06/2012 12:42 PM
Subject: [equinox-dev] Java8 and JavaFX8
Sent by: equinox-dev-bounces@xxxxxxxxxxx





Hi,

To integrate JavaFX2 into Java7 I had to reside to nasty stuff like
Adapter Hooks but I don't want to go into detail.

My current concerns are the future. First of all JavaFX 8 although
shipped with Oracle-JDK8 will not be JSRed so its packages can not get
part of the Java8 profile.

It currently looks like they are not getting on the bootclasspath but
rather pushed into lib/ext. I've done some tests today and it looks like
this lib/ext stuff is going give us some headaches because this means
the javafx stuff is not going to be on the bootclasspath which the
system.bundle delegates to, am I right with this?

So what could be a runtime-solution? Would a OpenJDK8-Profile which
exports JavaFX packages help us, or would it ran into the same problem
that it will delegate to the bootclassloader whereas we'd need to
consult the extension-classloader?

Once we figured out how we can solve the problem at the runtime layer we
can go the next step to tweak PDE in a way that it we can work with it.

Tom

--
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
http://www.BestSolution.at                      phone    ++43 512 935834
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev


_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev
6 November 2012 18:42
Hi,

To integrate JavaFX2 into Java7 I had to reside to nasty stuff like
Adapter Hooks but I don't want to go into detail.

My current concerns are the future. First of all JavaFX 8 although
shipped with Oracle-JDK8 will not be JSRed so its packages can not get
part of the Java8 profile.

It currently looks like they are not getting on the bootclasspath but
rather pushed into lib/ext. I've done some tests today and it looks like
this lib/ext stuff is going give us some headaches because this means
the javafx stuff is not going to be on the bootclasspath which the
system.bundle delegates to, am I right with this?

So what could be a runtime-solution? Would a OpenJDK8-Profile which
exports JavaFX packages help us, or would it ran into the same problem
that it will delegate to the bootclassloader whereas we'd need to
consult the extension-classloader?

Once we figured out how we can solve the problem at the runtime layer we
can go the next step to tweak PDE in a way that it we can work with it.

Tom

JPEG image

JPEG image

PNG image