Thank you Matthieu,

Let me create a sample GWT web application with tabs along with the use case mentioned below. Will update the status in the JBS.

Thanks,
Guru

On 12/4/16 2:26 PM, Matthieu BROUILLARD wrote:
Hi,

let me try to give more insights

/>>> 0. resume of running and crashing JVMs/
64 bits: all tested work (at least issue not reproduced)
32 bits:
   - 8u74-i586, 8u60-i586: fail
   - 8u45-i586: OK

/>>> 00. Application under test/
We have simplified the reproducer JavaFX app as "just" a simple webview opening our GWT webapplication. There's no magic here, just a call to load() method on the WebEngine of a WebView.

/>>> 1. What Content is loaded to WebEngine. (Live webpage or custom content)/
It is a dynamic GWT webapplication.
When launched, the application loads correctly: dynamic content (multiple dynamic parts in the app) is created/loaded/shown. The loaded page shows several tabs, when clicking on a tab the JVM crashes.

/>>> 2. which mouse event lead to crash (Right / left click, Double click, Scroll)/
single left click.

/>>> 3. W.r.t 2nd point, is there a pop-up dialog exist ? or what was the html element under which mouse event triggered (Input element, Editable div, Form elements, Image , upload dialog, table,etc)./
it is a simple div element that is CSS styled.

/>>> 4. Any Modal Dialog used in the application under test , which will be used as a call back to an event from WebEngine ?/
No in this case our JavaFX reproducer app, is nothing more than:
    ...
    WebView wv = new WebView();
wv.getEngine().load("http://ourwebapp";);
    ...

In our global product we have indeed interaction between the host JVM & the webapp ; but here we reproduce the crash with a simple app consisting of the 2 lines above.


On Tue, Apr 12, 2016 at 9:41 AM, Guru Hb <guru...@oracle.com <mailto:guru...@oracle.com>> wrote:

    Hi Matthieu,

    Crash is due to Mouse event is not handled correctly from WebView
    context.

    Could you please provide these details.

    1. What Content is loaded to WebEngine. (Live webpage or custom
    content)
    2. which mouse event lead to crash (Right / left click, Double
    click, Scroll)
    3. W.r.t 2nd point, is there a pop-up dialog exist ? or what was
    the html element under which mouse event triggered (Input element,
    Editable div, Form elements, Image , upload dialog, table,etc).
    4. Any Modal Dialog used in the application under test , which
    will be used as a call back to an event from WebEngine ?

    With above details , i could derive a test content / scenario to
    re-produce the crash.

    Thanks,
    Guru

    On 11/4/16 10:09 PM, Matthieu BROUILLARD wrote:

        Hi all,

        In our application that integrates some webapps we are facing
        quite the
        same error than the one reported at
        https://bugs.openjdk.java.net/browse/JDK-8149738.
        The issue above has been marked with 'bugdb_22696741' ; does
        it mean it is
        referenced with more details elsewhere? Is there a known
        workaround?

        In our use case, when navigating in the webview into some GWT
        based
        application using 8u74-i586 (or 8u60-i586) we always crash the
        JVM and
        using 8u74 (64 bits) everything works.
        Doing additional tests revealed that 8u45-b51-i586 is working
        ; but
        unfortunately we have already moved on to more recent JDKs for
        our entire
        application.

        Sadly I do not have a simple reproduction app to provide.
        We also enable some prism debug settings without seeing
        anything relevant
        in the logs ; activating the software pipeline didn't changed
        anything
        neither.

        Are there specific debug params for the webview, webkit &
        jfxwebkit.dll ?

        The crash report looks the same than in the above issue:

        # # # # # # # # # # # # # # # # #

        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x5456b7c9,
        pid=5836,
        tid=6260
        #
        # JRE version: Java(TM) SE Runtime Environment (8.0_74-b02) (build
        1.8.0_74-b02)
        # Java VM: Java HotSpot(TM) Client VM (25.74-b02 mixed mode
        windows-x86 )
        # Problematic frame:
        # C  [jfxwebkit.dll+0x8eb7c9]
        ...
        #

        ---------------  T H R E A D  ---------------

        Current thread (0x0563d000):  JavaThread "JavaFX Application
        Thread"
        [_thread_in_native, id=6260, stack(0x05c70000,0x05cc0000)]

        siginfo: ExceptionCode=0xc0000005, reading address 0x002e0060

        Registers:
        EAX=0x002e0030, EBX=0x00000011, ECX=0x0d457870, EDX=0x00000000
        ESP=0x05cbd578, EBP=0x00000000, ESI=0x0d457870, EDI=0x0bae3030
        EIP=0x5456b7c9, EFLAGS=0x00210246

        Top of Stack: (sp=0x05cbd578)
        0x05cbd578:   0d202f60 54580e41 00000001 00000001
        ...
        0x05cbd5e8:   54a51a88 00000000 54510e95 0d2f89a0

        Instructions: (pc=0x5456b7c9)
        0x5456b7a9:   24 0c 01 75 35 8b 4e 14 8b c1 c1 e8 09 a8 01 75
        ...
        0x5456b7d9:   06 74 07 8b ce e8 4d de ff ff 5e c2 08 00 cc cc


        Register to memory mapping:

        EAX=0x002e0030 is an unknown value
        EBX=0x00000011 is an unknown value
        ECX=0x0d457870 is an unknown value
        EDX=0x00000000 is an unknown value
        ESP=0x05cbd578 is pointing into the stack for thread: 0x0563d000
        EBP=0x00000000 is an unknown value
        ESI=0x0d457870 is an unknown value
        EDI=0x0bae3030 is an unknown value


        Stack: [0x05c70000,0x05cc0000],  sp=0x05cbd578,  free space=309k
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM
        code, C=native
        code)
        C  [jfxwebkit.dll+0x8eb7c9]

        Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
        j com.sun.webkit.WebPage.twkProcessMouseEvent(JIIIIIIIZZZZZF)Z+0
        j
        
com.sun.webkit.WebPage.dispatchMouseEvent(Lcom/sun/webkit/event/WCMouseEvent;)Z+141
        j
        
javafx.scene.web.WebView.processMouseEvent(Ljavafx/scene/input/MouseEvent;)V+175
        j
        
javafx.scene.web.WebView.lambda$registerEventHandlers$32(Ljavafx/scene/input/MouseEvent;)V+2
        j
        javafx.scene.web.WebView$$Lambda$87.handle(Ljavafx/event/Event;)V+8
        j
        
com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(Ljavafx/event/Event;)V+5
        j
        
com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Ljavafx/event/Event;)V+28
        j
        
com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Ljavafx/event/EventType;Ljavafx/event/Event;)Ljavafx/event/Event;+29
        j
        
com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+8
        j
        
com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+11
        j
        
com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+29
        j
        
com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+69
        j
        
com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+17
        j
        
com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+69
        j
        
com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(Ljavafx/event/Event;Ljavafx/event/EventDispatchChain;)Ljavafx/event/Event;+17
        j
        
com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(Ljavafx/event/Event;)Ljavafx/event/Event;+69
        j
        
com.sun.javafx.event.EventUtil.fireEventImpl(Ljavafx/event/EventDispatchChain;Ljavafx/event/EventTarget;Ljavafx/event/Event;)Ljavafx/event/Event;+10
        j
        
com.sun.javafx.event.EventUtil.fireEvent(Ljavafx/event/EventTarget;Ljavafx/event/Event;)Ljavafx/event/Event;+46
        j
        
javafx.event.Event.fireEvent(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V+30
        j
        
javafx.scene.Scene$MouseHandler.process(Ljavafx/scene/input/MouseEvent;Z)V+491
        j
        
javafx.scene.Scene$MouseHandler.access$1500(Ljavafx/scene/Scene$MouseHandler;Ljavafx/scene/input/MouseEvent;Z)V+3
        j
        
javafx.scene.Scene.impl_processMouseEvent(Ljavafx/scene/input/MouseEvent;)V+6
        j
        
javafx.scene.Scene$ScenePeerListener.mouseEvent(Ljavafx/event/EventType;DDDDLjavafx/scene/input/MouseButton;ZZZZZZZZZ)V+46
        j
        
com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run()Ljava/lang/Void;+476
        j
        
com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run()Ljava/lang/Object;+1
        v  ~StubRoutines::call_stub
        J 1203
        
java.security.AccessController.doPrivileged(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
        (0 bytes) @ 0x029c8787 [0x029c8720+0x67]
        j
        
com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$354()Ljava/lang/Void;+11
        j
        
com.sun.javafx.tk.quantum.GlassViewEventHandler$$Lambda$191.get()Ljava/lang/Object;+4
        j
        
com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(Ljava/util/function/Supplier;)Ljava/lang/Object;+18
        j
        
com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(Lcom/sun/glass/ui/View;JIIIIIIIZZ)V+103
        j com.sun.glass.ui.View.handleMouseEvent(JIIIIIIIZZ)V+30
        j  com.sun.glass.ui.View.notifyMouse(IIIIIIIZZ)V+181
        v  ~StubRoutines::call_stub
        j
        com.sun.glass.ui.win.WinApplication._runLoop(Ljava/lang/Runnable;)V+0
        j
        
com.sun.glass.ui.win.WinApplication.lambda$null$148(ILjava/lang/Runnable;)V+8
        j com.sun.glass.ui.win.WinApplication$$Lambda$38.run()V+12
        j  java.lang.Thread.run()V+11
        v  ~StubRoutines::call_stub

        ...

        # # # # # # # # # # # # # # # # #




Reply via email to