I know this is a old thread, but things keep on changing. Coming to JDK 8u20 is a new method primaryStage.setAlwaysOnTop(true);
This would be the easiest way to make a stage always on top. For early access to 8u20 visit the website.
public class KeyholeDemo extends Application {
@Override public void start(Stage primaryStage) {
primaryStage.initStyle(StageStyle.TRANSPARENT);
primaryStage.setAlwaysOnTop(true);
// code omitted...
}
public static void main(String[] args) {
launch(args);
}
}
Sample code taken from this nice writeup