2 Replies Latest reply: Jun 6, 2013 9:30 AM by 1013238 RSS

    How to enable internal logging for JavaFX

    1013238
      Hi all,

      Apologies for what may seem like a stupid 'newbie' question but I seem to be having performance issues with WebView running PrimeFaces on a tomcat server and I would like to enable javafx logging to see if i can diagnose what the issue might be.. I am using the 32bit version of JDK 1.7.0_21 on Windows 7 platform...

      Having conducted a google search I have noticed that there have been individuals who have been able to obtain logging from the JavaFX high performance graphics engine namely 'Prism'

      Where can i find the logs for Prism?

      Many Thanks
      James
        • 1. Re: How to enable internal logging for JavaFX
          shakir.gusaroff
          You can get the logging info for Javafx8. Set
          -Djavafx.pulseLogger=true
          as a VM argument.

          Here is the log info for a simple "Hello world" program:

          INTER PULSE LOG DATA
          Counters:
               Parent#layout() on dirty Node: 2
          
          
          PULSE: 0 [171ms:0ms]
          T14 (0ms): CSS Pass
          T14 (0ms): Layout Pass
          T14 (0ms): Waiting for previous rendering
          T14 (0ms): Copy state to render graph
          T12 (0ms): Dirty Opts Computed
          T12 (94ms): Painted
          Counters:
               Cached Region background image used: 1
               Nodes rendered: 3
               Nodes visited during render: 3
               Region background image cached: 1
          
          
          PULSE: 1 [141ms:46ms]
          T14 (0ms): CSS Pass
          T14 (0ms): Layout Pass
          T14 (125ms): Waiting for previous rendering
          T14 (0ms): Copy state to render graph
          T12 (0ms): Dirty Opts Computed
          T12 (0ms): Painted
          Counters:
               Cached Region background image used: 1
               Nodes rendered: 3
               Nodes visited during render: 3
               Parent#layout() on dirty Node: 2
               Region background image cached: 1
               
          • 2. Re: How to enable internal logging for JavaFX
            1013238
            Ahh thanks, I also found a blog about hidden VM args located here..
            http://www.adamish.com/blog/archives/320

            I have actually tried using javafx8 (JDK 1.8 b92) to see whether there was any performance improvements with WebView with JSF and PrimeFaces 3.5 but no noticeable improvements was observed..

            I have even tried building a pure JavaFX application using JDK 1.7.0_21 on an Apple iMac - OS X and theres no difference in rendering performance between apple and windows operating systems.

            Regardless of JavaFX version and platform, WebView appears to be sluggishly slow at rendering the JSF primeface components, namely the PrimeFaces timeline from the primeface-extensions 0.7.0 component library..

            I am at a lost at the moment...

            I have noticed however that rendering performance of the JavaFX WebView improves when you reduce the size of the webview component.