[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-distro-pkg-dev
Subject:    [Bug 740] JavaFx applications fail to start
From:       bugzilla-daemon () icedtea ! classpath ! org (bugzilla-daemon at icedtea ! classpath ! org)
Date:       2011-05-31 22:13:56
Message-ID: E1QRXCG-0005NU-DE () icedtea ! classpath ! org
[Download RAW message or body]

http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=740





--- Comment #5 from Omair Majid <omajid at redhat.com>  2011-05-31 22:13:56 ---
Some more information. The stack trace in the exception shows classes from
icedtea-web, icedtea6 and javafx. All of these classes have full permissions
either because they are part of the system or they have the necessary
privileges.

The permissions are missing because the of call to
doIntersectionPrivilege(AccessControlContext.java:105)
This intersects the permissions of the current stack with the permissions of
the stack when the event was created. This AWTEvent (InvocationEvent, to be
exact) was created by a call hierarchy that includes the main application:

Thread [BrickBreaker] (Suspended (entry into method <init> in InvocationEvent))
    InvocationEvent.<init>(Object, int, Runnable, Object, boolean) line: 202
    InvocationEvent.<init>(Object, Runnable, Object, boolean) line: 170
    InvocationEvent.<init>(Object, Runnable) line: 134
    EventQueue.invokeLater(Runnable) line: 1002
    SwingToolkit.startup(Runnable) line: not available
    NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
available [native method]
    NativeMethodAccessorImpl.invoke(Object, Object[]) line: 57
    DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43
    Method.invoke(Object, Object...) line: 616
    GUIRuntimeProvider.run(Method, String...) line: not available
    Entry.start(Class<?>, String[]) line: not available
    Main.main(String[]) line: not available
    Main.main(String[]) line: 35
    NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
available [native method]
    NativeMethodAccessorImpl.invoke(Object, Object[]) line: 57
    DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43
    Method.invoke(Object, Object...) line: 616
    Launcher.launchApplication(JNLPFile) line: 617
    Launcher$TgThread.run() line: 926

The main method is com.sun.javafx.runtime.main.Main, which is part of the
unsigned BrickBreaker.jar. The intersection of permissions hence results in a
set that does not include permissions to get the thread's context ClassLoader.

Given the intentional security design, I cant fathom how this works with the
proprietary JDK/javaws. A doPrivileged() wrapper in javafx when calling
Thread.getContextClassLoader should fix this problem for us.


-- 
Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic