JavaFX Roadmap

I've been developing with JavaFX for a bit, and there are some things which cause me grief that I'd like to discuss. I hope everyone takes this constructively as my intent is to spur discussion on potential improvements to what I believe is an excellent GUI development platform already.
1. The lack of embeddable Swing components.
Really, this is an extension of the greater issue which is a lack of existing JavaFX component libraries similar to SwingX for Swing. I know some are emerging, but it seems like Oracle did the opposite of what it should have done in order to promote JavaFX migration. Swing can embed JavaFX, but JavaFX cannot embed Swing. This promotes sticking to Swing rather than adoption of JavaFX.
2. A simple to use Swiss army knife layout manager.
I don't want to start a holy war here, but other than in specialized cases, I tend to stick to MigPane. All of the other layout managers cause me to spend too much time thinking about layout rather than the primary objective of my code. I'd love to see something like MigPane incorporated into JavaFX proper, perhaps unifying all the existing layout through something like a LayoutBuilder pattern. That way we quit having to think about "Which one fits what I want?" and instead focus on "What do I want my Layout to do?"
3. Too much scaffolding. Let's take a TableView for instance. Why do I have to know about an ObservableList? Shouldn't that complexity be hidden behind the scenes? Why do I also have to get into cellValueFactories? Can't this also be hidden behind the scenes?
To me, an ideal implementation of something like TableView would be as simple as:
List<String> header = ...
List<List<String>> rows = ...
TableView table = new TableView(header, rows)For objects, perhaps a simple interface could substitute for the complexity of controlling table behavior by hand. Having to create a custom TableCell which describes the edit process seems overly complicated and something that could be easily absorbed into the framework.
Anyway, I am running out of time for this post, more to follow later when I have time. Perhaps an example of a TableView extension would be more helpful.

Maybe the 4th beer was too many, but I figured what the heck, instead of posting on message boards, I'm going to roll up my sleeves and start hammering out some useful code, shut up and start sharing my findings through a blog. Who knew that javafx2.org would be open?
I hope that I don't come to regret this post.
http://javafx2.org/
- Pat

Similar Messages

  • JavaFX roadmap ... emerging platforms ... (iPhone/iPad, Android ...)

    Hi,
    This url talks about the roadmap.
    http://javafx.com/roadmap/
    It seems to be upto 2014.
    Request the JavaFX Product Managers to develop and state their plans for the emerging platforms. (iPhone/iPad, Android, Blackberry OS ? )
    Cheers ...
    /rk

    See http://fxexperience.com/2012/01/2012-javafx-resolutions/ for an unofficial top 10 goals for this year.
    Note resolution #5 (embedded):
    "As announced at JavaOne 2011, the new embedded platforms coming from Oracle (CDC) will be using JavaFX as the UI technology. That is slated for final release in 2013 along with Java 8 and JavaFX 3. However, there is a lot of work that has to be done this year to make this a reality, including adding touch event support to the platform. Having working embedded prototypes for this year is high on the list of goals for JavaFX!"
    I could be wrong here, but I believe the Android prototype shown at JavaOne was based on very early CDC prototype and the potential strategy for iOS support would include bundling an iOS port of the CDC with apps. My guess is that the JavaFX team is working on Android/iOS support (and additional ARM/Intel platforms) but is not at liberty to discuss this work and roadmap in detail at this stage (but that is just my guess - I don't know).
    Also, as resolution #1 (open source) progresses, future plans will become naturally more transparent.
    The goal is to complete the open source process this year.

  • JavaFX Table for mobile..

    Hello All,
    I would like to display product details in a Table in Mobile. I think, presently JavaFX is supporting Table in Mobile. Am I Correct?.
    1. Is it possible to display Product details in Table format in Mobile?
    2. Is there any another way to display table in Mobile?
    Thanks in advance.

    Hi wisconsin,
    During the conference of JavaFX 2.0 . Some of the Oracle member staff of JavaFX have given demo of JavaFX running inside I Pad, Android phones. The deal of oracle with Apple is still in progress. So currently I don't think there is any fixed decision of running Javafx inside all mobile phones. But as per the javafx roadmap the JavaFX is intended to be mostly for Tablet Device than phones. 'Multi-touch', 'Accelerator' and many other features are on the pending for developing of JavaFX still .
    Thanks.
    Narayan

  • JavaFx 2.2 and 3.0 - New features??

    Can someone please let us know what new features are planned for 2.2 and 3.0?
    I have seen the roadmap http://www.oracle.com/technetwork/java/javafx/overview/roadmap-1446331.html already, but that comes short on on details.
    Edited by: user10714864 on May 5, 2012 6:25 AM
    Edited by: user10714864 on May 5, 2012 6:26 AM

    Hi. For more detail sign into: http://javafx-jira.kenai.com/secure/Dashboard.jspa
    You can create feature requests, bug reports, and observe the current status of the project.

  • ADF VS JavaFX

    ADF is a RIA development framework, and so do JavaFX, what's the difference between ADF and JavaFX ? Oracle supports both ADF and JavaFX, what's the future stategy of these two frameworks ?
    thx.

    sorry I don't know much of JavaFx, is a rich framework of sun, right?
    you can see the road map of JavaFx here: http://javafx.com/roadmap/

  • JavaFX 2.2 release date??

    Can somebody let me know when JavaFX 2.2 is going to be released?
    Also it shall be helpful if somebody can state the modifications (at high-level) in JavaFX 2.2 from 2.1.

    Can somebody let me know when JavaFX 2.2 is going to be released? 2.2 is feature complete, there are still a bunch of QA to be done and issues which need to be fixed.
    Roadmap would put it going GA a couple of months out (by non-expert, outsider, eyeball estimate).
    http://www.oracle.com/technetwork/java/javafx/overview/roadmap-1446331.html
    Also it shall be helpful if somebody can state the modifications (at high-level) in JavaFX 2.2 from 2.1.More low level than high level, but I'll let you work out the high level things from the list of features which have been implemented (closed as fixed) for 2.2 from the (public) jira.
    RT-520     Add "localToParentTransform" and "localToSceneTransform" variables to Node.fx     
    RT-6917     Add ImagePattern to the Public API as part of the common profile     
    RT-12663     DnD and Clipboard support for embedded scenes (e.g. JFXPanel)     
    RT-14436     Allow CSS styling for WebView     
    RT-14909     It should be possible to customise the TableColumn header area more     
    RT-15008     Add switch to WebEngine to turn JavaScript on/off     
    RT-15684     WebView: Make context menu optional     
    RT-16742     Add support for 100% width and height applets     
    RT-17388     Mac Core Animation Layer     
    RT-17398     Render to image (snapshot) support     
    RT-17407     Canvas Node     
    RT-17409     Image Ops     
    RT-17438     Add key classification to KeyEvent     
    RT-17577     packaging: add support for app parameters to the double clickable jars     
    RT-17740     Provide FXML-friendly way in the API to specify "clamped" and "unbounded" resizable nodes     
    RT-17975     Support for discontinuous selection in ListView and TreeView     
    RT-18291     Image class should recognize a URL beginning with a leading slash as relative to the classpath     
    RT-18400     Support cross build for Linux embedded     
    RT-18533     Supply a Path constructor which accepts collections     
    RT-18710     Common gestures API     
    RT-18911     Provide API for checking for transparent window support     
    RT-18980     Provide a Browser History API     
    RT-18982     Mac: Support the Enter Full Screen window title-bar button on Mac OS X Lion 10.7     
    RT-19034     Rewrite prism-es2 pipeline to not use OpenGL bindings     
    RT-19042     Add fontSmoothingType API to WebView     
    RT-19128     SQE: develop tests and testplan for Linux with browser support     
    RT-19130     SQE: develop tests and testplan for Canvas Node     
    RT-19132     SQE: develop tests and testplan for Support Mac OS 10.7 (Lion) with browser support     
    RT-19134     SQE: develop tests and testplan for Enable full screen apps on Mac OS X Lion     
    RT-19136     SQE: develop tests and testplan for color Picker control     
    RT-19140     SQE: develop tests and testplan for Core JavaFX module(s) must not require any modules outside of core Java SE modules     
    RT-19141     SQE: develop tests and testplan for Support Touch Control - One Finger Swipe in UI Controls     
    RT-19146     SQE: develop tests and testplan for No FX dependency on AWT or Swing     
    RT-19150     SQE: develop tests and testplan for Render scene to image     
    RT-19151     SQE: develop tests and testplan for We Browser History     
    RT-19153     SQE: develop tests and testplan for Multi-touch support     
    RT-19154     SQE: develop tests and testplan for Enhancements to the TableView Control     
    RT-19302     Gtk: createAppletWindow() fails in Glass on Linux     
    RT-19312     Color Picker control     
    RT-19369     Enable full screen apps on Mac OS X Lion     
    RT-19370     Virtual Keyboard: Input Method Constraints     
    RT-19375     Pagination UI Control     
    RT-19446     Add ability to co-bundle Java + JavaFX + App into a single native executable     
    RT-19449     TableView: Improved keyboard navigation (discontinuous selection)     
    RT-19452     TableView: Item renderers and item editors     
    RT-19492     Let fx:deploy ant task optionally generate pre-FX jnlp format to support FX-in-Swing WebStart applications and applets     
    RT-19515     Support Mac OS 10.7 (Lion) with browser support     
    RT-19531     SQE: develop tests and testplan for Pagination control     
    RT-19779     Add tests that verify edit start/commit/cancel action handlers     
    RT-19837     Add tests that use DepthTest class     
    RT-19841     Add tests to verify getting/setting different event handlers for scene and that they work     
    RT-19865     WebView: Tab Key navigation between hyperlinks and Enter to activate     
    RT-19983     Document JS-to-Java bridge     
    RT-20292     packaging: document support for app parameters to the double clickable jars     
    RT-20362     Swipe event     
    RT-20364     Multi-touch events     
    RT-20398     Mac: List of open windows in the dock icon menu     
    RT-20529     Need a way to know currently focused component     
    RT-20837     Support HTML5 Drag-n-Drop     
    RT-22005     Mention ContextMenuEvent in MouseEvent and KeyEvent

  • Video capture and JavaFX

    I've run throgh few threads in this forums and the sites, but I could not find when (and if) video capture will be supported by JavaFX (audio is not a major problem, as it is supported in JRE). It is possible to know something about it ?
    Where any roadmaps for future releases (in terms of contents / release dates) are published ?
    Thanks.

    JavaFX does not support flash streaming.
    JavaFX does support http live streaming: http://en.wikipedia.org/wiki/HTTP_Live_Streaming
    JavaFX does not support audio/video capture (there are other java/native libraries that do that).
    See:
    Video camera capture/streaming: example implementation "Thread: Video camera capture/streaming: example implementation"
    http://javafx-jira.kenai.com/browse/RT-3458 "Camera and Microphone" (go vote for this jira to get some capture technology built into JavaFX).

  • Done with javafx?

    I would just like to say that I thought javafx would be really promising, and it looked like a great new application platform to start developing on, until I realized the lack of in depth documentation, lack of support lack of functionality, and lack of general knowledge of the language in general. I've noticed the same problem with androids java offshoot for the Android device. I just want to say, if you're going to put a new language out there, you should put as much effort in support and documentation as you do in development, or it'll never fly. If maybe I am missing some kind of better support system than this forum, or even stack overflow for that matter(cause it seems that hardly anyone knows any indepth information on this langauge) than let me know, and I'll glady continue. But if I've found all the resources there are, then I'll leave it behind, which is sad because I thought it seemed like a really great idea.

    So far FX 2.0 seems far on the horizon (scheduled to still be beta after the release of Java 7) and without features that will only be implemented in Java 8, I expect JavaFX 2.0 code (written in Java, I am not talking about the other languages for the JVM) for Java 7 to be nothing more than an unreadable nightmare of spaghetti code for listerners and value probagation and anonymous class (well you know, all those things that will replace triggers, binding properties and closures).
    The "within a few days" that is still written on the roadmap page have already quietly morphed into 6 months and nothing has happened yet which make me think that they are late on schedule...
    Well at least it's good to know someone has access to the Early Access release... Can't wait to put my hands onto it.

  • JavaFX continues the support of JavaFX

    We are analyzing some possible solutions to provide a web solution across different devices and browsers.
    JavaFX is an option but I have found information that the project JavaFX is going to be discontinued by Oracle:
    http://www.coderanch.com/t/533315/Java-FX/java/future-JavaFX
    Is that true?
    Any information or confirmation would be great.
    Thanks
    Edited by: user3843724 on 25-May-2011 06:33

    >
    The term "discontinued" is not totally clear to me. It means, in this case, to migrate from 1.3.1 to 2.0, right?
    So we are saying that JavaFX is not going to, let's say, disappear. Totally the opposite.
    It is completely supported by Oracle. In word of the Roadmap web "Oracle is committed to making JavaFX the premier environment for rich client applications."
    >
    Sort of. JavaFX in general is not being discontinued, only the scripting language is being dropped. JavaFX 2.0 will be a normal Java API. So for instance, this:
    //Creating and using a stage in the scripting language.
    Stage {
        scene: Scene {
    }will no longer be possible in Script. But it will be possible to do in normal Java:
    //Using a stage in normal Java.
    public class Main extends Application {
         * From what I have seen in the more recent examples produced by Oracle employees in their blogs,
         * the main stage is given to you inside this method.
        public void start(Stage stage) {
            //Create a scene and add it the Java way.
            Scene scene = new Scene();
            stage.setScene(scene);
        public static void main(String[] args) {
            Launcher.start(Main.class, args);
    }Our interest is in producing a web application, with advanced components (tables, menus, trees,...) as alternative to other approaches like Ajax.
    Then the solution would consist in running JavaFX in an applet of the HTML page. Am I correct?
    >
    Sure.
    >
    Another concern is the licensing. As it will become part of java, no license is required.
    >
    I have no idea what the license will say. But technically speaking, there is a license for normal Java. I am quite certain there will be a license for JavaFX.
    If you are asking whether you can develop commercial applications with it free of charge, the answer should be yes. I think the license is mainly just to make sure you accept that you are using their software at your own risk and won't sue them if something goes wrong. Of course, I am not a lawyer, so use my advice at your own risk and make sure to read the license for yourself when it comes out!
    >
    And last but not least, we are interested in making the web accessible from different devices (PC, PDA, advanced mobiles...) and different browsers (IE, Mozilla, Safari,...). Is there a list of tested devices/browsers compatible with JavaFX?
    >
    I don't think so. I can tell you right now though that support for mobile has been dropped for the time being. Oracle will probably try to build support for it in the future, but they are still kind of busy trying to make JavaFX in general work.

  • JavaFX Contractors

    Hello JavaFX Community,
    I am a product manager at an internet start up in NYC. My company is currently in the process of overhauling one of our most significant products. After a good amount of research into the broad spectrum of client-side technologies, I made the decision to migrate the product from Flash/Flex to JavaFX. In the spirit of efficient division of labor, I divided the project into two outsourced sub-projects. The first is a series of pure Java classes to handle low-level data manipulation and processing. The second is the creation of the GUI in JavaFX based on the designs / IA of our design team.
    The first project is coming along swimmingly and is nearing completion. The second project is not quite as productive. I am having serious difficulty finding someone (individual or firm) that feels confident enough in their JavaFX skills to take on this project. My concerns/questions are two-fold:
    1. How can/should I go about finding the appropriate person/firm to take on this project.
    2. Should I be concerned that I am about to invest a good amount of my company's time and money in a platform that is so young and (seemingly) under-adopted.
    Looking forward to your thoughts and suggestions,
    Chris

    I dont think javafx is ready for serious projects, as Sun is still bug-fixing it , and i think there will be no new components, at least, until java-one (june). current and upcoming(1.1) versions are still missing must-have components&features, there is no visual designer tool which most people are waiting for it to start developing apps.(netbeans plugin is ok for geeks)
    no need to mention slowness of startups, (sometimes i wonder whether or not it will be possible to start a java app. just like flash)..
    although no roadmap announced yet, IMHO you may have a better chance to find javafx experts after 6 monts
    sorry for pessimism, this is all i got from forums, blogs..etc

  • JavaFX on Android?

    [This article|http://gigaom.com/2009/07/30/is-googles-android-killing-windows-mobile/] and the comments that follow make a good case that Android is a better bet than Windows Mobile for the future. However, the only devices that currently support JavaFX mobile are all WinMo. That's to be expected - build for the market leader first.
    I'd like to replace my current cell phone with an Android-based cell phone, and I'd like to be able to do JavaFX development on it in several months.
    If you had to bet today, for several months down the road, do you think that JavaFX will be running on Android? If so, which Android device would you bet on?

    then we have to port our JavaFX application to android, anyway, JavaFX help us porting the Windows Mobile at least,
    Java Developer hope SUN can support more platforms, but SUN is complaining the developers always ask for more and more.
    what we want is the roadmap or plan.

  • JavaFX and RIA's

    Hello all,
    I am new to the world of JavaFX and I was looking forward to create a RIA that's at par with the apps made using Flex SDK. Are Java FX and Flex comparable? If so, let me know how to get started with JavaFX to help me create a nice web application which provides visually attractive UI to the client.
    Thanks,
    Varun

    sorry I don't know much of JavaFx, is a rich framework of sun, right?
    you can see the road map of JavaFx here: http://javafx.com/roadmap/

  • Features which would make JavaFX great

    Hi
    At my previous job I wrote a client application using WPF. It offers a few features for which I'm trying to find equivalents in JavaFX.
    I'm just starting to learn/investigate JavaFX and it seems like a nice library.
    WPF offers two controls which in my opinion is the cornerstone of their framework, namely ContentControl and ItemsControl (and derived classes like ListView).
    With a ContentControl I can bind a ViewModel to it's content and then provide a template with which to render it. In WPF it would look something like:
    <ContentControl
    Content="{Binding Path=Person}"
    ContentTemplate="{StaticResource PersonTemplate}"/>
    where Person would be a property on the current DataContext.
    I guess the equivalent in JavaFX could be:
    <ContentControl ContentProperties="model=${model.Person}" ContentTemplate="PersonTemplate.fxml"/>
    where model is a variable which has a Person property and PersonTemplate.fxml would be another FXML script which could then use it's model property (which would be the Person object) for rendering. I'm just making up the ContentProperties syntax for illustration purposes.
    The ItemsControl can be used to display a list of objects. The WPF example would look something like:
    <ItemsControl
    ItemsSource="{Binding Path=People}"
    ItemTemplate="{StaticResource PersonTemplate}"/>
    where People could be an observable list of Person objects. If it is observable, the by adding or removing Person objects from the list, the user interface gets updated automatically.
    I guess I could write controls like these, but since they provide such great flexibility I'd imagine that they would better fit as part of JavaFX, if not already supported.

    I agree completely. Microsoft have been doing some excellent work on client software of late and there is much to be learned there. Likewise, Microsoft can (and is) learning a thing or two on open development from the Java community.
    Just to set your expectations, don't expect JavaFX to have the fit, polish and functionality of some other frameworks at this time. JavaFX 2.0 was only recently released and is a complete rewrite. There are quite a few rough edges in the code and documentation. The roadmap looks good, but it will take a while and a large investment from Oracle to get there. It remains to be seen if they will be able to build the community for client side development in the way they already have on the server side.
    JavaFX is clever and innovative and worth learning in it's own right. Many learnings you have from other systems, such as architectural patterns and technologies like css, xml based markup and layout, jquery style node selection, etc are easily transferable for use in JavaFX and some of JavaFX techniques such as construction of linear blends and gradients can be used elsewhere.
    At the moment JavaFX is more of a base toolkit than an application framework, so you will miss some of the stuff like this http://compositewpf.codeplex.com/releases/view/55580#DownloadId=166638 from Prism. But, if JavaFX succeeds, that can be added over time and in an open development environment you can be one of the people who makes it work.

  • Why Oracle dropped support of JavaFX on ARM devices?

    Why Oracle dropped the support of JavaFX on ARM devices? Release note: http://www.oracle.com/technetwork/java/javase/jdk-8u33-arm-relnotes-2406696.html
    Im studing JavaFX for a commercial project with Raspberry, but, this news changed everything.

    I am asking the same question, and I am very disappointed with the lack of communication from ORACLE.
    I have spent a lot of time to learn JavaFX from 1.1 version and I was very enthusiastic about the new start of JavaFX 2.0 and the "promises" that came with it.
    And today, after 2 years, the only thing we can do seriously with JavaFX is building a desktop application !
    - Building a Web application is theoretically possibly but is a mess in the real world (JRE version, plugin, certificate, ...)
    - Building an application for the mobile world is not completed yet. It remains a lot of work, and no roadmap can give us a vision of the future. Moreover, with politics and courts problems between Oracle and Google and Apple, future of JavaFX is opened to doubt.
    - And now if ARM support is dropped ...
    The only way that remains partially clear is that JavaFX will replace Swing. But that would be a big waste and an enormous disappointment if it was the case.
    If only Oracle could communicate on its strategies ...
    During this time, in a parallel world, Javascript, HTML, and CSS are growing and eating all the devices ...
    Best regards

  • JavaFX on ARM, way forward ?

    As JDK 8u33 for ARM has removed JavaFX embedded, what is way forward in ARM platform for headful applications?
    What is the recommeded/suggested UI technology for ARM?
    Though Swing and AWT are supported, it is evident from JDK roadmap that these UI technologies are projected as more of a legacy stuff and no longer enhanced.

    Sorry Kiran, I have no further insight into this than what is in the links.
    If you have further questions, you can try contacting one of these resources
    openjfx-dev mailing list
    Gerrit Grunwald - a JavaFX + Raspberry Pi tinkerer
    http://javafxports.org/page/home
    Johan Vos - javafxports primary maintainer
    A Raspberry Pi support forum.

Maybe you are looking for