Is Oracle committed to JavaFX?!?!

I REALLY want FX to succeed ... I am betting my company's first product on it. However, I am beginning to question if Oracle is really interested in it. When I search on the web, many of the links are broken. Much of the available documentation is inaccurate or out of date (refers to an older version). The Wiki (wikis.sun) is so slow that I timeout before the page ever shows up. The widget set is lacking. I am constantly finding bugs, and when I tried to sign up to be able to post bugs at JIRA I discovered that the 'Affects/Version' field only goes up to 1.2.1 ... we are at 1.3 now. Is that even the right site anymore?
So - I need to know if Oracle is really serious about this. I am investing my entire life savings in my start-up company and I intended to go straight-Sun with the implementation (MySql, Glassfish, JavaFX) ... did I make a mistake? Do I switch horses or stay the course?
Thanks ... this is a serious inquiry so please only serious responses.

I'm trying to make the opposite decision right now. I had been planning to use Flex for the UI of my first project and now I'm considering a switch to JavaFX. The grass is always greener I suppose :-)
Things like a lack of widgets don't bother me too much. Take the lack of a table / data grid widget as an example. Judging by the ListCell implementation in 1.3 ([http://fxexperience.com/2010/04/new-to-javafx-1-3-cells/]) the table widget that ends up in JavaFX is most likely going to be easy to use, flexible and efficient. It's a component that I think is very important and I don't mind (patiently) waiting for a robust implementation.
As far as documentation, I think most of the new(ish) RIA technologies have a similar problem. I had the same issue with Flex. It annoys me a bit. Really, if you're posting an example on the internet how hard is it to preface it with a little version information? I was quite happy to see the tutorials section of javafx.com including version numbers. It (javafx.com tutorials) could evolve into an extremely valuable resource for developers.
Some of the other non-technical things really frustrate me though.
Licensing is at the top of my list of annoyances. There's no way I can develop a serious application without being allowed to redistribute the JavaFX runtime. What happens when Oracle pushes out version 1.4 of the runtime? It's the equivalent of randomly upgrading a third party library my application depends on without doing any testing. It's the major issue that's keeping me from switching to JavaFX right now. The thing that scares me is that, from my perspective, it should be a matter of when we'll be allowed to redistribute the runtime, not a matter of if we'll be allowed to.
I have a tendency to conjure up worst case scenarios, so, in my mind, there's someone within Oracle involved with the licensing that's holding things up because they think they need to have total control over the platform. I honestly have no idea how things work at a company as big as Oracle though. I simply can't understand why there's never been any decent feedback about whether or not we'll eventually be able to redistribute the runtime.
No matter how good the technology gets (in my opinion it's already very good) restrictive licensing is going to stifle adoption.
Second on my list is of annoyances is an apparent lack of interest in things that could improve adoption of JavaFX. Take Maven support as an example. The JIRA says there was a working implementation nearly 4 months ago ([http://javafx-jira.kenai.com/browse/JFXC-3041]), but nothing ever happened with it. What the hell? To date I've seen four different Maven implementations; m2-javafxc, jfrog, fest and the one in the JIRA issue I linked.
That's four developers with the ability and ambition to create Maven plugins for JavaFX. By the looks of it the one in the JIRA issue I linked could have become the official implementation and everyone interested in Maven support could have started consolidating their efforts. The guy even offered to try to get it hosted in a repository that syncs to Maven central. If Oracle is committing so much to JavaFX, why does something that can add value to the platform and is already implemented get ignored?
My last major complaint is about deployment. Even though it's improving, I'm still not impressed. There are too many points of failure:
1) dl.javafx.com not accessible
2) .jnlp file missing
3) code signing problems
4) missing .jar files
I know some of those are unavoidable and are the responsibility of the developer / deployer. The thing that annoys me is the lack of decent error handling in the applet. Who thought a *3 minute* timeout was reasonable for getting a .jnlp file? I made a nerd rage post with some applet complaints a few weeks ago, so I won't re-iterate it here.
As a minor API complaint I don't care for the navigation. I hate clicking on a package on the left, getting scrolled back up to the top of the page and having to scroll back down to select a class.
Back to the original question, there's been a few occasions where Oracle's confirmed their commitment to JavaFX. I actually have my own little theory they bought Sun because getting a Java solution on the client side (desktop, mobile, etc) is so important for them that they couldn't leave it up to chance. Keep in mind, that's 100% speculation on my part.
Since I'm worried about the same issues as you, I've always developed with the assumption that I may want to switch UI technologies at some point. I've put more emphasis on the server side than I have on the client side (UI) up until now. I make an effort to implement as much logic as possible on the server and keep the communication / data transfer platform neutral (ie: JSON or XML via HTTP).
Another thing that's impossible to ignore is Java. If I can't do something I want in (for example) Flex, there aren't many options. With JavaFX I at least have the option of implementing something in plain old Java (ie: Swing) if I really get stuck. It's something that's tough to ignore if you've got a good handle on Java.
I also have the attitude that as long as I can create version 1.0 of my software and start making money using an existing platform (JavaFX or Flex), that's all I need for now. I switched from Swing to Flex about eight months. In hindsight I feel like I may have been better off staying the course with Swing and getting a product out the door. Flex hasn't increased my productivity enough to make up for the time I spent learning it, integrating it into my development process, etc.
Think of it this way... if you're proficient in Java and JavaFX, how many bugs can you work around and how many custom widgets can you create in the time it would take you to become equally proficient with a competing technology?
Part of the reason I'm thinking of switching to JavaFX is because I think it's eventually going to hit a point where it goes from being the underdog in the RIA space to being the best technology in the RIA space. The JavaFX developers have done lots of things very well that don't get much attention. For example, coalesced layouts and lazy binding. Up until now there seems to have been a lot of emphasis on creating a solid foundation. IMO that's a good thing and will eventually pay off.
I'm curious, what would you build your UI with if you decided to ditch JavaFX?

Similar Messages

  • Future of JavaFx and commitment from Sun

    Hi All,
    I wanted to get some insight into the level of investment an organization could make into adopting JavaFX as the preferred UI technology for their products/applications. Is Sun committed to promoting JavaFX and making it production quality and implementing with time all the missing UI components? What is th efuture of JavaFx after the Sun-Oracle merger?
    thanks
    Sanjeev

    Hi Sanjeev
    in my opinion:
    JavaFX is a promising technology but it is currently too green to consider use in a serious application. To my knowledge, only one company has so far released a serious product written in JavaFX (Indaba), but I've never used it and they themselves describe it as "alpha". I believe Indaba went with JavaFx because they were reliant on Java APIs (they were originally going to use Flash)
    The JavaFX team seem to be working hard on improving the technology, particularly around performance, however it is still quite buggy, and this will hamper efforts to produce a serious application. Also, as you mention, there are gaps in the components available for use in applications. There is also work going on for tooling.
    There are very little public facts available on the future of JavaFX (aside from sporadic marketing pushes). Oracle made a public commitment to JavaFX at JavaOne, but I don't know whether you can bet a corporate strategy on that alone. We know that future releases are coming, albeit at a slow pace.
    It would be great if Sun/Oracle could come up with something more detailed, as I think that (alongside a stable platform) would do a lot to increase the confidence of developers.
    My guess is that it will end up as a stable technology, though I've no idea how long this will take. To that end, I would closely monitor the progress of the technology but maybe not adopt it as the preferred technology just yet.

  • Oracle Mix & JavaFX

    Oracle Mix provides social networking, idea sharing, groups and more for the Oracle community.
    You can find two JavaFX groups at Oracle Mix:
    - Enterprise JavaFX
    - JavaFX geeks and newbies
    see [https://mix.oracle.com/|https://mix.oracle.com/]

    I think JavaFX as a concept for client side programming is powerful one. I mean you don't really expect for enterprise applications any one would need to include rich multimedia so I think there swing alone will suffice. But there is myriad of non-enterprise applications that can fully utilize JavaFX in combination to Java like games, e-learning, simulations, online content, etc...
    Now if Oracle decides to enter in that spectrum they'd better support JavaFX since it has cost SUN already so much and new owners should be reluctant just to drop all that investment. However what ever will happen Oracle should inform us in very short time what strategies they have in mind since keeping silent now is the worst that they could do.
    Already developers are reluctant to invest any time in any technology they are not absolutely sure it will become the next killer apps driver and instead will focus on most marketed and demanded ones. Reluctance of early adopters would mean certain death to JavaFX since it already lags behind its competitors and loosing any more time would mean loosing lots of customers to them. And since multimedia business is increasingly becoming a war between platforms not languages (which all have similar concepts, x and y coordinates, frames, tweening...) Java is in a big advantage here.
    By the way Oracle established a path recently, they do not buy anything without having tried it themselves before that, just like with Application Server after which they bought Weblogic which is superior to their own product. Similary if and it's just if they plan to enter multimedia they will never buy Adobe without gaining some experience before that in similar line of product just like JavaFX provides.

  • Requesting Oracle to release Soma (javafx 1.3) ASAP ...

    Hi all,
    I'd like to request, those of you who would like to join in this request, to add to this thread.
    Based on past statements from some key engineers in the JavaFX team, the 1.3 release was supposed to happen sometime now. If memory serves it was supposed to be co-ordinated with the release of NetBeans 6.8. Its possible that there are some very good reasons to hold back the release. However, judging from the number of "open" issues within the bugbase, it appears that SoMA (javafx 1.3) may be very close to "release".
    We are all looking forward to the "speed improvements" and "new controls" that have been mentioned.
    It also appears that some fundamental work in the SceneGraph is happening. All of this is great. If this can be held off for the next release and the current work (speed & controls) is made available to us, it would be greatly appreciated.
    Much Thanks
    /rk
    ps : The more I use JavaFX, the more I like it and believe in the value of the "declarative scenegraph" approach.

    Hi, glad to hear that you like JavaFX and see the value of the scene graph approach.
    I work on the Oracle (formerly Sun) JavaFX team, and we are busily working on the next release. The transition to Oracle has caused minimal disruption, and we are making great progress. We'll ship the next release as soon as ... well, not as soon as possible but as soon as is practical. Please also bear in mind that while I do work on the team, I'm not an official spokesperson or anything like that.
    I should remind people, though, that a number of statements have been made in these forums that are being treated as fact, whereas they are really inferences and speculation. For example, that it was supposed to ship on some date, or it is supposed to have some specific feature or enhancement. You can infer and speculate all you want -- I'm not telling you to stop -- but please make sure you differentiate between fact and speculation.
    I wish I could be more specific about our exact plans, but Oracle has a stricter policy than Sun about information about future releases.

  • Can Oracle 9i enable schema/table creation to be transacted?

    If anyone can help with this, that would be much appreciated.
    So - the server has disabled autocommit and commits/rollbacks are handled by the application. Even though this is the case, Oracle 9i is not rolling back changes that have (i) created schemas/users and/or (ii) tables.
    Worse still, it seems to be performing a partial rollback - some tables in a schema are left with data and others are not.
    Now, this may be caused by our server creating tables for indexing while adding data to some existing tables - that is the table definitions have auto-committed the transaction to date, also committing the table insertions/updates.
    After some delving, the JDBC driver has the following method: dataDefinitionCausesTransactionCommit - for Pointbase and other databases, this returns false - for Oracle it returns true.
    The questions are therefore:
    1) Is there a solution with Oracle 9i that enables schema and table creation to be transacted?
    2) Does Oracle 10g allow definition clauses to be transacted?

    Actually I believe there is a limited way to make DDL statements transaction based via the CREATE SCHEMA command.
    From the 9.2 SQL manaul >>
    Use the CREATE SCHEMA to create multiple tables and views and perform multiple grants in a single transaction.
    To execute a CREATE SCHEMA statement, Oracle executes each included statement. If all statements execute successfully, Oracle commits the transaction. If any statement results in an error, Oracle rolls back all the statements.
    <<
    This may be of some limited use to you, but your process should probably be changed to track of the DDL and to undo (drop) any created objects if a rollback is issued.
    HTH -- Mark D Powel --

  • Using javafx and awt together in MAC

    I have read blogs about not using SWT and AWT libraries together in MAC systems. So, are their any constraints for JAVAFX and AWT as well ?
    Please refer to this link.
    I am having a similar case of writing an image to disk and I am using javafx, the line doesn't seem to work on my mac.
    Message was edited by: abhinay_agarwal

    The link you posted on SWT/AWT integration is irrelevant to JavaFX/AWT integration.
    To learn abount JavaFX/Swing integration, see the Oracle tutorial trail:
    JavaFX for Swing Developers: About This Tutorial | JavaFX 2 Tutorials and Documentation
    As Swing is based on AWT, the tutorial trail is equally applicable whether you are integrating JavaFX with only AWT or with the full Swing toolkit.
    In my opinion, there is little reason to integrate JavaFX with just the AWT toolkit as there is little of value that AWT would provide that JavaFX does not already provide.
    JavaFX integrates fine with ImageIO to write files to disk, Oracle provide a tutorial for that (see the "Creating a Snapshot" section):
    Using the Image Ops API | JavaFX 2 Tutorials and Documentation
    //Take snapshot of the scene
    WritableImage writableImage = scene.snapshot(null);
    // Write snapshot to file system as a .png image
    File outFile = new File("imageops-snapshot.png");
    try {
      ImageIO.write(
        SwingFXUtils.fromFXImage(writableImage, null),
        "png",
        outFile
    } catch (IOException ex) {
      System.out.println(ex.getMessage());

  • Autocommit feature in Oracle

    If I set the autocommit on and execute a transaction as follows:
    DELETE FROM TASK_LOG WHERE ROWNUM <= 100;
    is it that Oracle commits after deletion of each record or it that the commit occurs automatically after the 100
    records have been deleted?

    Yep, don't turn it on. You don want to se a message 'xxxxx rows deleted', when you expected to delete only one row with autocommit on.

  • Why doesn't Maven find jfxrt.jar, although it is included in the JDK?

    Hi,
    Why doesn't Maven find jfxrt.jar, although it is included in the JDK?
    My solution to build JavaFX apps with Maven is:
    <dependency>
                <groupId>com.oracle</groupId>
                <artifactId>javafx</artifactId>
                <version>2.2</version>
                <scope>system</scope>
                <systemPath>${java.home}/lib/jfxrt.jar</systemPath>
    </dependency>It works, but I wonder why the Maven build process can't find it automatically, as any other Java dependency, too.
    If I build without the dependency, it can't find javafx imports.
    Since Java 7 Update 6 it is included in the JDK.

    There is a long drawn-out thread on this (you don't need to read it):
    Error initializing OC4J server (JDev 10.1.3 EA1) "JDK 7u6 JavaFX integration - Is jfxrt.jar supposed to be on the classpath?"
    Short summary is that jfxrt.jar is in the jdk/jre as of 7u6, but not on the default classpath for the jdk/jre (as of 7u13).
    This will change in a future release (e.g. I believe the latest early access builds of jdk8 do have jfxrt.jar on the default runtime classpath).
    So for now, you will need to explicitly add jfxrt.jar to the classpath. There are various ways to do this, one is to use a system dependency and then use the maven ant run plugin to package your app as is done in this example: http://code.google.com/p/willow-browser/source/browse/pom.xml
    <dependency>
      <groupId>javafx</groupId>
      <artifactId>jfxrt</artifactId>
      <version>${javafx.min.version}</version>
      <scope>system</scope>
      <systemPath>${javafx.runtime.lib.jar}</systemPath>
    </dependency>
    <plugin>
      <artifactId>maven-antrun-plugin</artifactId>
      <version>1.6</version>
      <executions>
        <execution>
          <id>create-launcher-jar</id>
          <phase>package</phase>
          <goals>
            <goal>run</goal>
          </goals>
          <configuration>
            <target xmlns:fx="javafx:com.sun.javafx.tools.ant">
              <taskdef
                  uri="javafx:com.sun.javafx.tools.ant"
                  resource="com/sun/javafx/tools/ant/antlib.xml"
                  classpath="${javafx.tools.ant.jar}"/>
                <fx:application id="fxApp"
                    name="${project.name}"
                    mainClass="${exec.mainClass}"/>
                <fx:jar destfile="${project.build.directory}/${project.build.finalName}-launcher">
                  <fx:application refid="fxApp"/>
                  <fx:fileset dir="${project.build.directory}/classes"/>
                </fx:jar>
                <attachartifact
                    file="${project.build.directory}/${project.build.finalName}-launcher.jar"
                    classifier="launcher"/>
            </target>
          </configuration>
        </execution>
      </executions>
    </plugin>Another way would be to make use of the zenjava javafx maven plugin:
    http://www.zenjava.com/2012/11/24/from-zero-to-javafx-in-5-minutes/

  • Images not displayed in Developing Business Services tutorial

    Hi Oracle Team,
    Images in the Developing Business Services with ADF Business Components tutorial @http://www.oracle.com/technetwork/testcontent/developbusinessservices-097552.html is not getting displayed.
    CAn anyone from Oracle team fix this please.
    Regards,
    Vikram

    Vikram is right!
    Neither IE nor Mozilla work.
    It is 3 days since vikram reported the defect.
    Won't anybody fix the code of the page?
    Is oracle committed to offer support, training and reliable resources to developers who use their products, or not?
    NA
    http://nickaiva.blogspot

  • Java FX against AJAX (from larry ellison)

    larry ellison had said that Oracle will prefer JavaFX over Ajax at Java one.
    http://www.theregister.co.uk/2009/06/02/ellison_oracle_javafx/
    We wonder how this effents oracle java tool strategy anf J developer ( also ADF Faces buit on Ajax) ?

    I guess you'll have to ask Larry that.
    As mentioned before - we are not allowed to talk about anything related to the potential Sun deal until the deal actually closes.

  • R12 upgrade path

    Hi All,
    Does anyone have a document about R12 upgrade path. Would like to know what is the future of R12 with Fusion coming up soon.
    Thanks
    Srini

    If you search for Apps Unlimited in www.oracle.com you will get the hits.
    http://www.oracle.com/applications/applications-unlimited.html
    Applications Unlimited :
    Oracle commits to individual product line enhancements even after the delivery of Oracle Fusion Applications

  • Can't run in browser on latest Linux and Mac with Java7u13 JFX2.2.5

    Hi!
    I can't start JavaFX 2.2.5 applications in browser(all possible browsers) in Oracle Linux 6.3 x86 and latest MacOS. I have the latest Java 7 u 13 from Oracle.
    Neither JavaFX Netbeans sample, my applications nor Ensamble(http://download.oracle.com/otndocs/products/javafx/2.2/samples/Ensemble/index.html) work.
    The applications work if I start them as normal apps, but not from the browser.
    Java works perfectly on those systems, just that I can't start JFX 2 in browsers.
    What should be done? My clients need the flexibility of starting their apps from browsers.
    It worked a few versions ago, but now I can't start them. Browsers tell me that I don't have Java. (they show that image with Java that redirects to the page from where I can download Java). I also tried to install just the JRE from that link. I have removed and reinstalled Java.
    Is anyone else facing this problem?
    Any help would be really useful.

    Moreover, trying to run http://java.com/en/download/installed.jsp it fails. It doesn't detect Java neither. It seems that there is a problem with Java Browser Plugin
    The outcome for me was (on Win7+JRE7u13+Firefox17), Oracle's Ensemble sample was accessible from the web . . . your mileage may vary . . .
    The major browser vendors have blocked earlier versions of Java. In my case - windows 7 + jreu11 + firefox - I got spinning blue dots of doom instead of an applet being launched. The blue dots just sit there and spin forever while nothing happens. This occurred for both the Java installation check and the Ensemble sample applet.
    I installed the latest jre offered me from http://java.com, which was java 7u13. When doing this please, remember to uncheck the incredibly stupid default option of also installing the ASK toolbar which is a nasty piece of software.
    Then going back to the java.com installation check page, I get a pop-up that an unsigned applet wants to run (check that it doesn't display behind your browser window). This unsigned applet prompt is displayed by default for JREs newer than jre7u11 in order to combat drive by download attacks using unsigned java applets exploiting security holes in the java runtime. I accepted the warning pop-up and the system was able to detect the Java version: "You have the recommended Java installed (Version 7 Update 13)."
    Then I went back to the Ensemble sample page: http://download.oracle.com/otndocs/products/javafx/2.2/samples/Ensemble/index.html#SAMPLES - this time (after accepting the strange Signed by UNKNOWN dialog), Ensemble launched instead of displaying never ending spinning blue dots.

  • EDIT method doesn't work after adding new row

    I would like to start editing after adding new row into TableView.
    I copied example from Oracle website: [Using JavaFX UI Controls - 13 Table View|http://docs.oracle.com/javafx/2/ui_controls/table-view.htm#CJAGDAHE]. Then I put additional button for adding new row and define action for the button.
        final Button addButton = new Button("Add");
        addButton.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent arg0) {
                Person p = new Person("", "", "");
                table.getItems().add(p);               
                table.getSelectionModel().select(p);
                table.edit(table.getSelectionModel().getSelectedIndex(), table.getColumns().get(2));
        });In result I can see selected new row but the table doesn't start edditing in the third column.
    I have similar method for editing existing rows and it works properly.
        final Button editButton = new Button("Edit");
        editButton.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent arg0) {
                table.edit(table.getSelectionModel().getSelectedIndex(), table.getColumns().get(2));
        });Could you help me what I do wrong?

    Try wrapping the setCaretPosition(...) method in a SwingUtilities.invokeLater(...)
    caret=outputArea.getDocument().getText(0,outputArea.getDocument().getLength()).length();Should be:
    caret = outputArea.getDocument().getLength();

  • Poor linux support of Jdev 9.0.3

    I am not sure why JDev 9.0.3 has such poor support for linux . In the docs it says that the profiler and
    code coach only works in windows and the debugger runs slow in linux.
    I dont understand this since the JDev is written in Java then what is the issue.
    I thought Oracles commitment to Linux was serious. I am moving my Dev Env to linux
    and if JDev has such poor support for linux I may have to look at another IDE.
    thanks
    Sarwar

    The profiler and code coach require the Oracle Java VM (which is currently only available on Windows, but we're working on it).
    The debugger is slower against hotspot than our own VM (so debugging on Linux will be slower no matter which IDE you use).
    You can profile a VM running on Windows from your Linux IDE (which is what I normally do).
    Hope this helps,
    Rob

  • How can I connect to my database ORACLE from JavafX?

    Hi! ¿Anybody have a example to learn how could connect my ORACLE database from my javafx application?

    Just use JDBC like you do in a regular Java program.
    Either you translate the code to JavaFX (creating Java objects, etc.) or you do a Java layer to simplify access.

Maybe you are looking for

  • YouTube and WiFi have a love-hate relationship

    My iPhone for some reason refuses to play YouTube videos under WiFi. With Edge it will always play them but with not so great, albeit watchable, quality. On the rare occasions the WiFi works with YouTube the quality is great. When trying on WiFi I co

  • Expand file system size

    Dears Can we expand mounted file system+ size on solris 10 ???, knowing that I'm not using SVM Thanks

  • ITunes won't save changed track information

    I am trying to edit and save track information (album name, # of #, etc...), including adding artwork, but no artwork ever gets added and when I click on the track to read the information, after editing it, it reverts back to the original information

  • SAP router connection.

    Hi,    I wanted to know how do we know 'saprouter' is configured on solution manager 4.0 and if it is how can we get the password for it.   Thank You.

  • LAN-based messaging

    Are there any apps that work on both desktop and ipad for LAN based messaging?