Zaproxy: JavaFX missing

Created on 25 Sep 2019  路  4Comments  路  Source: zaproxy/zaproxy

Describe the bug

zaproxy can't find JavaFX on the latest Kali

To Reproduce

Start zaproxy

Expected behavior

zaproxy find JavaFX

Software versions

  • ZAP: 2.8.1-0kali1
  • OS: Kali Linux rolling
  • Java: openjdk 11 /8

Errors from the zap.log file

java.lang.NoClassDefFoundError: javafx/embed/swing/JFXPanel
    at org.zaproxy.zap.extension.browserView.ExtensionHttpPanelBrowserView.isJavaFxAvailable(ExtensionHttpPanelBrowserView.java:92)
    at org.zaproxy.zap.extension.browserView.ExtensionHttpPanelBrowserView.hook(ExtensionHttpPanelBrowserView.java:74)
    at org.parosproxy.paros.extension.ExtensionLoader.hookAllExtension(ExtensionLoader.java:884)
    at org.parosproxy.paros.extension.ExtensionLoader.startLifeCycle(ExtensionLoader.java:784)
    at org.parosproxy.paros.control.AbstractControl.loadExtension(AbstractControl.java:58)
    at org.parosproxy.paros.control.Control.init(Control.java:132)
    at org.parosproxy.paros.control.Control.initSingletonWithView(Control.java:345)
    at org.zaproxy.zap.GuiBootstrap.initControlAndPostViewInit(GuiBootstrap.java:270)
    at org.zaproxy.zap.GuiBootstrap.access$100(GuiBootstrap.java:68)
    at org.zaproxy.zap.GuiBootstrap$2.run(GuiBootstrap.java:208)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.ClassNotFoundException
    at org.zaproxy.zap.control.AddOnClassLoader.findClass(AddOnClassLoader.java:318)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 11 more

Additional context

Installed: libopenjfx-java, openjfx, libopenjfx-jni, openjdk-11, openjdk-8

Tried to set CLASSPATH without success.

  • Java-11: zaproxy can't find JavaFX
  • Java-8: zaproxy freeze at startup at [ZAP-BootstrapGUI] INFO org.parosproxy.paros.extension.ExtensionLoader - Initializing HTTP Panel Syntax Highlighter View Extension
question

Most helpful comment

Solution:

  1. Install openjfx apt-get install openjfx
  2. Backup zap start script cp /usr/share/zaproxy/zap.sh /usr/share/zaproxy/zap.sh.20190925
  3. Edit zap start script:
    a. vi /usr/share/zaproxy/zap.sh
    b. Change line 130, from: exec java ${JMEM} ${JAVAGC} ${JAVADEBUG} -jar "${BASEDIR}/zap-2.8.1.jar" "${ARGS[@]}" to: exec java --module-path /usr/share/openjfx/lib --add-modules=javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.web ${JMEM} ${JAVAGC} ${JAVADEBUG} -jar "${BASEDIR}/zap-2.8.1.jar" "${ARGS[@]}"
  4. Start zap via /usr/share/zaproxy/zap.sh

The BrowserView addon should now work fine, and you will no longer get warning on startup.

All 4 comments

References:
https://github.com/zaproxy/zaproxy/issues/5327
https://groups.google.com/forum/?nomobile=true#!topic/zaproxy-users/uAuHfK1v2vA

Note JavaFX not being found should only prevent your use of the BrowserView addon, otherwise things should work fine.

The java 8 freeze issue you mentioned already has a ticket: https://github.com/zaproxy/zaproxy/issues/5585 and a PR has been opened with a fix. There's also a work around here: https://github.com/zaproxy/zaproxy/issues/5526#issuecomment-522015202

Thanks!
Its's working now :)

Solution:

  1. Install openjfx apt-get install openjfx
  2. Backup zap start script cp /usr/share/zaproxy/zap.sh /usr/share/zaproxy/zap.sh.20190925
  3. Edit zap start script:
    a. vi /usr/share/zaproxy/zap.sh
    b. Change line 130, from: exec java ${JMEM} ${JAVAGC} ${JAVADEBUG} -jar "${BASEDIR}/zap-2.8.1.jar" "${ARGS[@]}" to: exec java --module-path /usr/share/openjfx/lib --add-modules=javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.web ${JMEM} ${JAVAGC} ${JAVADEBUG} -jar "${BASEDIR}/zap-2.8.1.jar" "${ARGS[@]}"
  4. Start zap via /usr/share/zaproxy/zap.sh

The BrowserView addon should now work fine, and you will no longer get warning on startup.

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

Was this page helpful?
0 / 5 - 0 ratings