- Swing :: is a desktop presentation layer
- JSF:: web-presentaion
- JavaFX:: Like flash is meant to be embeded in a webpage.
- JSF and JavaFX won't replace Swing.
- Developing Applet! consider JavaFx
- Developing Desktop application! use Swing
- Swing needs JRE to distribute; JavaFx is a standalone product
needs a Plugin to run the application