FULL PRODUCT VERSION : JDK 9 b43, JDK 8u25 b18, JDK 7u67 b01 ADDITIONAL OS VERSION INFORMATION : MS Windows 7 OS A DESCRIPTION OF THE PROBLEM : If applets are dynamically inserted into a web page by addition of "APPLET" tag to the document of the page using JavaScript, sometimes the applet is not started in Internet Explorer (IE) 11, IE 9, and "java.lang.IllegalStateException" is printed in Java Console. STEPS TO FOLLOW TO REPRODUCE THE PROBLEM : 1. Upload HTML and JAR files from the attached archive file "AppletIsNotStartedOnDynInsIntoPage.zip" with the test case into a directory on a web server. 2. Install the testable JRE 9, or JRE 8, or JRE 7. 3. Go to "Java Control Panel -> Security -> Edit Site List...". In the shown dialog add URL of the web server's directory with the test case from the step #1 to the Exception Site List and click "OK". For example: "http://10.162.81.93/8058474/TestCase/" 4. Go to "Java Control Panel -> Advanced" and: - Switch on "Debugging -> Enable tracing" - Switch on "Debugging -> Enable logging" - Switch on "Debugging -> Show applet lifecycle exceptions - Choose "Java console -> Show console" 5. Open IE 11 browser, enable "F12 Developer Tools" and load HTML page with the test case from the step #1. 6. Click "go" button on the page, notice that the applet is loaded and displayed in 1 of 3 rectangles. Repeat this step until the applet is not displayed in a corresponding rectangle and "java.lang.IllegalStateException" exception is printed in Java Console. Please note, that it may be required to repeat the step #6 even 50 or 100 times, and that ability to reproduce the bug differs between hosts with various hardware configuration. ERROR MESSAGES/STACK TRACES THAT OCCUR : Full logs with the bug reproduced using various releases of JRE 9, JRE 8, JRE 7 by means of the test case are available in the attached "Logs.zip" archive file. ---------- Part of Java Console output containing "IllegalStateException" thrown, when the bug occurred ---------- PluginMain: processing StartAppletMessage PluginMain: starting applet ID 12 in parent window 0x1a0732 with parameters: Document base = http://10.162.81.93/19617940/TestCase/AppletIsNotStartedOnDynInsIntoPage.html launchjnlp= code=AppletIsNotStartedOnDynInsIntoPage.class codebase=http://10.162.81.93/19617940/TestCase/ width=200 archive=TestCase.jar appletparam1=hello12345 height=100 Applet2Manager.getJarFiles() for applet ID 12 Jar Files:TestCase.jar Applet2ClassLoaderCache using zombie list entry for http://10.162.81.93/19617940/TestCase/,TestCase.jar Applet2Manager executing createTGAndAC() for entry http://10.162.81.93/19617940/TestCase/,TestCase.jar Applet2Manager.getClassLoaderCacheEntry() for applet ID 12: ClassLoader=sun.plugin2.applet.Applet2ClassLoader@~0x1753b6d, ThreadGroup=sun.plugin2.applet.Applet2ThreadGroup@~0x964833, AppContext=com.sun.deploy.uitoolkit.impl.awt.AWTAppContext@~0x136e637 PluginMain.registerApplet: 12 -> sun.plugin2.applet.Applet2Manager@18486a3, previous manager: null java.lang.InternalError: couldn't create component peer at sun.awt.windows.WComponentPeer.checkCreation(WComponentPeer.java:822) at sun.awt.windows.WComponentPeer.<init>(WComponentPeer.java:793) at sun.awt.windows.WCanvasPeer.<init>(WCanvasPeer.java:45) at sun.awt.windows.WPanelPeer.<init>(WPanelPeer.java:74) at sun.awt.windows.WWindowPeer.<init>(WWindowPeer.java:171) at sun.awt.windows.WFramePeer.<init>(WFramePeer.java:168) at sun.awt.windows.WEmbeddedFramePeer.<init>(WEmbeddedFramePeer.java:38) at sun.awt.windows.WToolkit.createEmbeddedFrame(WToolkit.java:510) at sun.awt.windows.WEmbeddedFrame.addNotify(WEmbeddedFrame.java:82) at sun.plugin2.main.client.PluginEmbeddedFrame.addNotify(Unknown Source) at sun.awt.windows.WEmbeddedFrame.<init>(WEmbeddedFrame.java:73) at sun.plugin2.main.client.PluginEmbeddedFrame.<init>(Unknown Source) at com.sun.deploy.uitoolkit.impl.awt.AWTPluginEmbeddedFrameWindow.<init>(Unknown Source) at com.sun.deploy.uitoolkit.impl.awt.AWTPluginWindowFactory.createWindow(Unknown Source) at sun.plugin2.main.client.PluginMain$AppletFrameCreator.run(Unknown Source) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:752) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:705) at java.awt.EventQueue$3.run(EventQueue.java:699) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:722) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:115) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:104) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:100) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:92) at java.awt.EventDispatchThread.run(EventDispatchThread.java:81) PluginMain: could not create embedded frame PluginMain.abortStartApplet for applet ID 12 basic: PluginMain.unregisterApplet: 12 from mananger sun.plugin2.applet.Applet2Manager@18486a3 Exception in thread "AWT-EventQueue-13" java.lang.IllegalStateException: Applet's parent container not set up at sun.plugin2.applet.Plugin2Manager.start(Unknown Source) at sun.plugin2.main.client.PluginMain$StartAppletRunner.run(Unknown Source) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:752) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:705) at java.awt.EventQueue$3.run(EventQueue.java:699) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:722) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:115) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:104) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:100) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:92) at java.awt.EventDispatchThread.run(EventDispatchThread.java:81) JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 20, availableHeapKB: 242849, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014326 microsecs. JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 22, availableHeapKB: 242466, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014283 microsecs. JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 24, availableHeapKB: 246659, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014829 microsecs. JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 26, availableHeapKB: 246162, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014581 microsecs. JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 28, availableHeapKB: 245684, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1035807 microsecs. JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 30, availableHeapKB: 244922, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014418 microsecs. JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 32, availableHeapKB: 244502, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014253 microsecs. PluginMain: processing SetAppletSizeMessage PluginMain: processing GetAppletMessage PluginMain: processing GetAppletMessage PluginMain: processing SynthesizeWindowActivationMessage JVM[id=1]-Heartbeat sent heartbeat: [Conversation: id=0, initiatingSide=true] { healthy: true, ageSeconds: 34, availableHeapKB: 243876, appletThreads: 2 } JVM[id=1]-Heartbeat round-trip heartbeat took 1014356 microsecs. PluginMain: processing StopAppletMessage, applet ID 12
|