JavaFX and the NetBeans Platform

We have just returned from JavaOne 2012 in San Francisco, energized with the prominence of both JavaFX and NetBeans talks. In particular, the NetBeans Platform enjoyed recognition during NetBeans Day and also in many sessions at JavaOne.

One of these sessions was ours: Make Your Clients Richer: JavaFX and the NetBeans Platform.

In this session we gave a general overview of the NetBeans Platform and why you’d want to use it. We showed you how to integrate JavaFX content into a NetBeans Platform rich client application.

Edit: There’s actually a more current video of this talk integrating JavaFX and the NetBeans Platform given at JavaOne 2014: Swing Away: Moving to JavaFX and the NetBeans Platform. In particular, JavaFX is now included with JDK 8 and later. You no longer need to create a module for the JavaFX runtime library.

Here’s a video that highlights the features of the demo application we used in our session. The application makes use of the JavaFX Charts as it presents Smartphone Sales data from 2008 through 2011. Watch all of the cool window operations that are possible with the NetBeans Platform. Most of the coding in this application is pure JavaFX to configure and display the data using the JavaFX Charts API. The application structure is provided out of the box with the NetBeans Platform.

We also added special effects to several charts to highlight features you get with JavaFX: animation and binding that enhance a JavaFX chart.

As more developers learn and use JavaFX for real business applications, they will see that combining JavaFX with the NetBeans Platform gives developers:

  • Rich client content with JavaFX (animation, binding, media, charts, 2D graphics, 3D graphics)
  • JavaFX architecture – take advantage of SceneBuilder, FXML, and CSS to work with user experience developers and graphic designers
  • Window System – move windows independently; open, close, dock, and resize them
  • Modular System – break up a large application into small, loosely-coupled modules
  • Dynamic Updates – provide customers with module-based updates on a as-needed basis
  • Action & Menu System – context-sensitive actions, tool bar, menu bar, action icons
  • File System – a virtual file system lets you store arbitrary data
  • Nodes & Explorer Views – display elements of your application in a variety of views
  • Help System – easily configure help for your customers
  • Internationalization and Localization – configure your application based on language and locale

Of particular note: neither Swing nor JavaFX have an application framework. The NetBeans Platform uses Swing for its underyling GUI, but you can easily provide JavaFX content in individual windows.