I've been trying some experiments with embedding JavaFX applets into Wicket components. The results look promising... Basically, for testing purposes, I've got a JavaFX applet that shows text entry fields - basically a simple format where you see
_______________________________________
| ___________________ |
| Your name |__________________|o |
| |
| ___________________ |
| Something |__________________|o |
| |
| |
| ______ ______ |
| |Prev | | Next| |
| |_____| |_____| |
|______________________________________|
where the number of pages, their contents and IDs are provided by applet parameters which the applet interprets. And yes, it's got some unobtrusive but cool looking fades and and other JavaFX sexiness. Neater still, it has a provision for server-side validation of the components. This took a little doing (some Java code that starts a background thread, and a Java interface for running it and performing callbacks which is implemented over a JavaFX class) - so when the user stops typing into a field for a few seconds, the applet can communicate with the server (presumably using the same mechanisms as Wicket's built-in AJAX support); the little "o" you see beside each text field shows whether the data is good or not, and while the background part is running (currently just aThread.sleep()
- I wanted to see if I could get this working at all).
But while what I've got is a really rough prototype, it proves you can do it (yes, you can do similar things with AJAX, but well, it's AJAX :-)).
Now, whether the world has any use for this is another question - but it could be interesting to make generic data entry applets with lovely UIs, which could simply be embedded in a Wicket component (and skinned with your site's own CSS - though this actually seems to be a little broken in JavaFX at the moment). Drop the component on your page, and, voila.
Now, of course, the hard side is the server<->client communication - that's next. Or maybe I'll take the weekend off...that would be unusual :-)