Mitch Pronschinske is the Lead Research Analyst at DZone. Researching and compiling content for DZone's research guides is his primary job. He likes to make his own ringtones, watches cartoons/anime, enjoys card and board games, and plays the accordion. Mitch is a DZone Zone Leader and has posted 2576 posts at DZone. You can read more from them at their website. View Full User Profile

Is There a Lack of Advertising for JavaFX Capabilities?

11.30.2009
| 10299 views |
  • submit to reddit
Less than a year into its life, JavaFX is already being declared dead by some bloggers.  However, numerous books and conference talks tell a different story.  Max Katz, a Senior Systems Engineer at Exadel who works on the JavaFX Studio plugin for Eclipse, spoke with DZone in an exclusive interview about the Eclipse plugin and his thoughts on the status of JavaFX.  He says JavaFX could use some more advertising, but it is far from dead.

DZone: Let's start off with the product you work on.  What is the Exadel JavaFX Studio?

Max Katz: Exadel JavaFX Studio is a plug-in for Eclipse for rapid development and deployment of JavaFX applications. It offers wizards, source tools, and visual tools to simplify development with JavaFX. Features such as code snippets, JavaFX doc in code assist, and the ability to create sample projects based on JavaFX SDK for example, make it simpler to learn and build with JavaFX.  [JavaFX Studio 1.1.1 is the newest version.  It was released in late November]

DZone: How does the product roadmap for the JavaFX Studio Eclipse plugin look?  What are some future features coming?  Is there anything else you know about coming from Exadel?  

First of all we are going to make the plug-in open source by the end of this year. We have started working on it. As for features, the main one is the visual JavaFX editor. There are some other minor features such as validation, better highlighting, etc. that we will be working on.  We are also planning to add features to help build enterprise JavaFX applications with the help of Exadel Flamingo.  Flamingo is an RIA framework that allows you to connect JavaFX to enterprise back ends such as Java EE, Seam and Spring. You can also connect Java ME and Android to the same back ends.

DZone: What motivated Exadel's decision to make JavaFX Studio open source?


Max: We always wanted to make it open source. We put it on hold for a little bit so we could get some versions out there. We want the JavaFX community to grow  and that's one step to make it happen.  Open source will make it much simpler for the community to contribute, try nightly builds and of course find bugs.

DZone: Tell me about the visual JavaFX script editor you're working on.

Max: I don't have much information yet, but people will be able to see the progress and try it (nightly builds) once the plug-in is open source. In the first version you can expect all the standard features of a visual editor.

DZone: I recently read a blog post declaring that "JavaFX seems to be all but dead now."  There have been several articles saying that JavaFX is lagging behind other mobile RIA platforms.  Do you think that with Flash, Silverlight, and Objective-C becoming more popular, JavaFX will be squeezed out of the mobile market completely?  Would you say it's "dying"?

Max: No, I don't think it will be squeezed. The mobile future of JavaFX does depend on its adoption by major  manufacturers.  Also, the blog said that BlackBerry picked Flash, and that it somehow killed the entire JavaFX platform. I'm hoping it won't lead to the end of the world in 2012. Sun can also make the mobile mega-war more interesting by porting JavaFX to Android.

DZone: Are there areas were JavaFX is having success right now?

Max: I think the community is growing very fast. JavaFX has been out for less than a year and there are numerous books already available. People are blogging about JavaFX and many conferences have sessions on JavaFX. Tooling support has been growing steadily as well. There's NetBeans, there's the Exadel plug-in. Sun also has a Eclipse plug-in.

DZone: You mentioned that good tooling is needed for JavaFX to succeed.  What good tooling is needed?

Max: Any tools that make it simple and easy to develop JavaFX applications. Visual editor, validation, debugging will make development simpler. You can always look at the Flash Builder plug-in for interesting features.

DZone: Does JavaFX need enterprise controls to survive?  Can JavaFX succeed if people start using it to build enterprise applications?

Max: Absolutely. JavaFX needs enterprise controls to continue growing. There are a number community projects that do offer such controls already, one of them is jfxtras. Our very own Flamingo project aims to make enterprise development easier by taking care of JavaFX integration with Java backend. It's just a matter of time before enterprise controls will be made available in JavaFX.

As for the second question, I believe yes.  Java is excellent on the server side, we all know that. And it's almost as good on the client side. We believe JavaFX is excellent technology for building rich user interfaces. Some issues still exist - JavaFX applets are not always starting virtual machine download size. I think the JavaFX team has addressed them all but it's still not as simple as running a Flash based application.

In another comment you said, "Adobe has done a great job telling that Flex can be used to build enterprise applications. With JavaFX, you get bouncing balls."  From your observations, have you seen a lack of advertising of JavaFX's enterprise capabilities from Sun?

Max: Just to make sure my comment is not taken out of context, what I meant is that the majority of JavaFX samples out there are client-only. They are not connected to any server-side technology. Most examples show shapes move around the screen, animation or some other visual effects.  If you go back in time, Flash was used for the same purpose, but Adobe has done an excellent job on demonstrating that Flash/Flex can be used to build rich enterprise applications. It feels like Sun hasn't promoted JavaFX as UI technology for building enterprise applications.     

We [Exadel] have deployed one enterprise-level application with JavaFX. We took the popular Seam Hotel Booking demo and created a JavaFX UI for it. You can see it here.

We have tried to contact Sun and see if we can work together on enterprise features. We're still waiting for their response.

To move enterprise JavaFX forward, we have Flamingo. It has features such as server-side push and off-line applications. It also has mobile tools that allow you to deploy applications with Java ME and Android.

Is there anything else that should be mentioned on the subject of JavaFX and your plugin?

Max: The main goal of Exadel in developing a JavaFX plugin is to lower the entry barrier for Java developers and to grow JavaFX community.  We welcome any feedback and any help with it.

Comments

Casper Bang replied on Mon, 2009/11/30 - 6:41pm

Could use some advertisement is an understatement: http://www.google.com/trends?q=flex%2C+silverlight%2Cgwt%2Cjavafx&ctab=0&geo=all&date=all&sort=0

William Siqueira replied on Mon, 2009/11/30 - 6:58pm

"Never Say Die, JavaFX"
There's a lot of interests on RIA market, so they attacking JavaFX, a new technology with a big potential... Sun need to wake up about JavaFX, and the Oracle acquisition must finish as soon as possible... JavaFX, for me, have guaranteed success on:
> JavaFX + Android
> JavaFX as JSF component
> Desktop(sure!)
> Enterprise Applications

Go Go JavaFX!!! Good Luck!

Otengi Miloskov replied on Mon, 2009/11/30 - 7:32pm

Only Exadel using JavaFX?, Who else?, I dont know anybody using JavaFX. Thats why a lot of people and bloggers are saying that JavaFX is dead since day 1.

In the other hand Java with Flex is doing pretty well, I know lots of projects and Im also doing Flex with Java lately. What is doing Spring to intagrate with Flex, Sun should did it that than creating a new script language and concept as JavaFX. I see JavaFX as a big Sun mistake as always with the desktop is a mess. But that is not the problem the sad of this is after one year still JavaFX does not take off after all the hype of 2 years. What a waste of time and money, really!.

2c.

Mark Unknown replied on Mon, 2009/11/30 - 10:53pm

What JavaFX has going for it is that it runs in the JVM.  This advantage is huge if you are running Java on the server.  I've been involved in a project using Flex, on using GWT and and I have looked at Silverlight.  While all three have advantages/features - if you are using Java on the server, you will end up with duplicated code and/or work arounds. Having Java on the client makes all Java APIs available.

 Another issue i see is that people a very blind to the overall potential of JavaFX. They only look at the RIA or Mobile angles. They don't look at ALL the angles - at least not at the same time. 

I am about to redo a project that I originally did in Swing (via JWS). It will be JavaFX.

Hantsy Bai replied on Mon, 2009/11/30 - 11:53pm

Is there a feature comparison with Sun official JavaFX plugin for eclipse?

Guido Amabili replied on Tue, 2009/12/01 - 1:18am

I hope JavaFX is not dying because I am working on a web application with JavaFX...

This plugin is cool for Eclipse developer who want to try JavaFX!

I myself use NB but things are still buggy(javafx doc viewer , debugging).

I must admit as a former Swing developer, JavaFX coding is muuuuch more fun.......

If you have done some JSon - Ajax coding before, you wont have problems reading/writing javafx source code...

and I tell you, you better jump on the wagon now...

Things such as Soma, authoring tool are coming...

I saw at Devoxx a demo of prism,the new graphics stack and it's really a real improvement compared to the actual graphic stack based on AWT for the desktop profile...

But we will have to wait until the Oracle acquisition is under the hood ...

(BTW I hope Oracle sells MySQL, I have some concern for MySQL)

Guido

 

Andrew replied on Tue, 2009/12/01 - 1:25am

I dont think that JavaFX has any future on mobile. Look at the current sorry position of Java on mobile - it is loosing to iPhone (Objective-C), Android (Dalvik VM), Windows Mobile(.NET) , Flash . What is currently left for J2ME is Blackberry and Symbian devices which I think only because the old contracts. Sun put J2ME development on hold for last years and Sun (Java) presents on mobile is shrinking fast - J2ME is not cool any more. But JavaFX is not even where J2ME is.

Nicolas Bousquet replied on Tue, 2009/12/01 - 4:50am

Problem with JavaFX is plain simple. It doesn't matter if it's good or not... Anybody can make a good graphical client and embbed it in a web browser... Given enough money, you could even do better than what exist now... But still it is likely it will not be a success.

But JavaFX is not a standard. HTML + javascript is a standard. Ok it's terrible to use and make application with it, but it is a standard. And if you want fancy graphics, Flash is the standard for the web.

I just want to add that all this JavaFx stuff is just an API on top of an applet to ease graphics effects (for web mobile...). It's shown as the holy grail, but it is ten years late. Many apps doesn't need theses effect at all and those who need it already use Flash...

 

Krzysztof Kula replied on Tue, 2009/12/01 - 4:08am

It is very strange if not silly to me that that JavaFX is bad(Dead) becouse it is 'another scripting language' other than Java. Groovy, Scala, JRuby, Jython  oll of this are gaining popularity becouse of features they offer! JavaFX is very Groovy-like so it has much more flat lerning curve.

To me JavaFX has future as a JSF components(Client side of server applications), custom components for displaying video, animations, rich content. Another platform is desktop, JavaFX is much powerful than Swing, and looks better. If you dont need for animations... you can use basic controls to get things done.

As  read 1.3 version would have many needed controls co most needed controls will be available. But in the time when you want to add some sining to your application what can you do with swing and what with JavaFX?, think about it.

 In my opinion JavaFX will replace Swing, so if someone want to ignore JavaFX and will telling that it is dead in near future will be using it. 

Always you can look at JavaFX as Java2D for regular programmers. Try to do some animation with controls and graphics in Java2D and in JavaFX and tell me what is easier.

 

Regards,

Krzysztof Kula

Armin Ehrenreich replied on Tue, 2009/12/01 - 4:51am

My major concern about this JavaFX thing is that you are forced to use a special language for this. Where is the idea of the universal JVM and libs? How to use this from Java, Scala, Groovy etc.? So please provide a Java API and Swing integration so that JavaFX functionality can be merged into existing Swing Apps and be used from any JVM language!!

If the JavaFX script language is the best way to use it, people will use this language. But I am personally totally fed up with learning scripting languages. There are enough of them you have to know nevertheless. Now yet another one, just for coding GUIs? I would only learn it if it would be a major technology, you have to know. For each language you have to memorize different syntax for accomplishing the same things, many idioms and so on...

So I strongly prefer to know few universal languages and them the APIs for the things I like to do, not a dozens ways how to specify a for loop or a class instantiation or the different concepts of inheritance of the given language. That is my main reason for using Java: One language, endless APIs! It is a nightmare to imagine that one should have to remember a special scripting language for each major API.

Nicolas Bousquet replied on Tue, 2009/12/01 - 5:01am in response to: Krzysztof Kula

If you use javaFX in you application for some stuff, dont be silly... Don't use that ugly JSF/richface and all... use it for the whole application, as you user will need a JVM anyway. Why

And i say, if you use javaFX... You have a JVM on the client side... Why would you want a browser anymore ? It's totaly useless and make it complicated. Just use java web start, make your application to auto update, and use a desktop client with full control of the screen, GUI and all.

You can always keep an applet version for thoses that want it and prefer to have a browser and say that you are in all this RIA stuff ! It's good for marketing.

Just a side note. Think about ITune. It's a desktop app, specific for every platform. Every user has to DL it and manualy update it. And it is far more popular and used than all other availables solution you can think off despire they solution use most of the time a browser based solution...

I guess as an editor, i prefer to make iTune and it be a desktop app with all associated problem and be very sucessfull... Than use all the RIA stuff and other fashionnables technology and fail to be the leader !

Guido Amabili replied on Tue, 2009/12/01 - 5:46am in response to: Armin Ehrenreich

To communicate with JavaFX classes from java, you can use Java Interfaces for example that are implemented by JavaFX classes.

E.g I use it that way to instantiate JavaFX classes by the java reflection api.

Guido

 

Steven Baker replied on Tue, 2009/12/01 - 6:14am

"Is There a Lack of Advertising for JavaFX Capabilities?"

>> no, but there is a lack of care

Armin Ehrenreich replied on Tue, 2009/12/01 - 6:53am in response to: Mark Unknown

It is a very unfortunate aspect of JavaFX that it is ruining Swing. Swing was a desktop toolkit that was doing pretty good for in house cross platform applications. Now Swing looks as on the siding but JavaFX is miles away from being seriously considered for enterprise applications. So currently it is hard to decide what way to go if you want to propose a desktop application in Java. This is really bad for the Java platform.

Ryan Developer replied on Tue, 2009/12/01 - 8:54am in response to: Guido Amabili

>  Guido Amabili said:

> and I tell you, you better jump on the wagon now...

 +1, totally agree.  This is only the very beginning of JavaFX's life.  The next release will come with more UI components, and hopefully the two design tools we've seen demos of at conferences (similar to Flex Builder and Flash Studio).  I think that will be the catalyst. 

I was sitting about 10 feet away from Chris Oliver when he was showing JavaFX off for the first time at JavaOne 2007.  The room was overflowing, and it was the main thing people buzzed about at the conference.  I never lost my interest in it, I've just been waiting for it to reach the level of completeness I expect.  I think I'll be learning it very soon, and know we have some good uses for it at work. 

I think the glass half empty crowd doesn't want it to succeed because they've already spent the time and effort learning competing technologies.  Like someone else said in these comments, they are sick and tired of learning yet another scripting language.  The rest of us who haven't already committed to competing technologies are willing and excited to learn JavaFX. 

 

Dmitry Shultz replied on Mon, 2009/12/07 - 5:38pm

Objective-C, Silverlight - stick to Apple/Microsoft libraries/technologies.
Flash - great for designers but sucks (IMHO) for programmers.

JavaFX with good tooling and faster start up will make them nervously smoking on the side.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.