Choosing Java GUI for Raspberry Pi dashboard application

Complete list

http://stackoverflow.com/questions/7358775/java-gui-frameworks-what-to-choose-swing-swt-awt-swingx-jgoodies-javafx

SWT and QT are excluded from the review because they’re not pure Java and require special installation of native components/libraries.

JGoodies

JGoodies Smart Client Showcase States

  • Version: Forms 1.8.0
  • Download here
  •  Advantages
  •  Disadvantages
    • No documentation
    • Not free
    • Latest version is not in Maven repository
    • Latest version for Maven: Forms 1.7.2

Apache Pivot

Apache Pivot Kitchen Sink Demo

  • Version: 2.0.4
  • Advantages
  • Disadvantages
    • No samples as Java application in jar files
      • Applications can be extracted from from “webapps/pivot-tutorials.war
    • No on-line documentation
      • Tutorials can be browsed (in Chrome) if Java plug-in is installed. See instructions here.  Important: Pay attention to 32/64 bit version.
    • Samples only for web-start or as applets (not easy to run because of browser/Java permissions etc.)

Running stand-alone examples (tutorials)

  1. Download apache-pivot-2.0.4.zip from “Binary Distributions” section here.
  2. Extract archive files
  3. Unzip apache-pivot-2.0.4/webapps/pivot-tutorials.war
  4. Extract all jar files from pivot-tutorials.war/lib directory:
    • pivot-charts-2.0.4.jar
    • pivot-core-2.0.4.jar
    • pivot-tutorials-2.0.4.jar
    • pivot-web-2.0.4.jar
    • pivot-wtk-2.0.4.jar
    • pivot-wtk-terra-2.0.4.jar
    • svgSalamander-tiny.jar
  5. Create file sample.sh (executable) with following content:
    export DISPLAY=:0.0
    java -cp pivot-charts-2.0.4.jar:pivot-core-2.0.4.jar:pivot-tutorials-2.0.4.jar:pivot-web-2.0.4.jar:pivot-wtk-2.0.4.jar:pivot-wtk-terra-2.0.4.jar:svgSalamander-tiny.jar org.apache.pivot.tutorials.KitchenSink
    
  6. Run sample.sh
  7. Update class name org.apache.pivot.tutorials.KitchenSink in sh file to run other tutorials:
    • org.apache.pivot.tutorials.HelloBXML
    • org.apache.pivot.tutorials.HelloJava
    • org.apache.pivot.tutorials.explorer.ComponentExplorer
    • org.apache.pivot.tutorials.stocktracker.StockTracker
    • More class names/packages can be browsed in Pivot source code repository.

Running example at Pi start

See LXDE solution at http://raspberrypi.stackexchange.com/questions/8734/execute-script-on-start-up

SwingX

Not really a separate library. All stable components are already included into standard Java Swing library.

Swing

SwingSet3 JList Demo

Already included in Java basic installation, so the version depend on installed JVM.

  • Advantages
    • No need to include a library in the application (already included in Java Runtime)
    • Pretty good  documented
  • Disadvantages
    • Old programming paradigm
    • Less components
    • Bad look and feel

 

Leave a Reply