Deane has posted 1 posts at DZone. View Full User Profile

JavaFX Preview Released: When Will the Madness Stop?

08.01.2008
| 10419 views |
  • submit to reddit
I with many have been a believer in Java on the client. I was excited to learn at JavaOne 07 about JavaFX, and even more excited by the great demos at JavaOne 08 dealing with Java 6u10 and JavaFX.

But then...

I am a Mac user. And as many of you Java Mac users know we have been very frustrated by the lack of understanding about the Java SDK path and now JavaFX on Mac. 

You see Apple, for what ever reason, chose to make Java 6 for Mac run only on their 64bit capable intel machines running Leopard. So basically anybody not using Intel Core 2 Duo and Leopard cannot run Java 6. 

Us mac Java guys were already very frustrated about this. But we were patient believing things would work out.

Now with the JavaFX preview release we learn that yes, JavaFX preview will only run on Java 6 capable macs. Has the concept of "Write Once Run Anywhere" been completely thrown out the window. 

As a Mac Java developer I expect to be able to write my Java apps on the Mac and have them run on Windows and Vs versa that was one of the HUGE benefits of the Java platform. Now I can't use Java6 features nor apparantly JavaFX because my intel mac is only Core Duo not Core 2 Duo. Besides I can't expect my customers of my products to have this type of latest and greates Mac hardware.  So basically the mac user base is up the creek with no paddle on JavaFX.

This is really a shame for Java on the client. At this Point MS Silverlight is actually more write once run anywhere then Java is. How can that be?

 Please Sun Help us out. 

1 of 2 things have to happen to work this out.

1. Apple needs to release Java 6 support on Tiger based machines PowerPC and original Intel so that we can have the widest possible user base.

or

2. Sun needs to make JavaFX capable of running on Java 5. 

Now option 1 has a really FAT chance of happening knowing Apple's past Java releases. Even if I hope for it, it really aint going to happen. Apple rarely worries about this type of backwards compatibility especially for something as unimportant to Apple's bottom line as Java.

So that leaves option 2.

Why can't Sun release JavaFX to run on Java 5, at least is a degrade gracefully approach. Its almost like we are getting a one-two punch from Apple and Sun, the problem is I don't know who is punching and who is just holding us down for the other one. 

I begged the Java client guys about this at JavaOne but apparently somebody at Sun feels differently. It's funny because most of them run MacBook Pros anyway, you would think this would be important to them.

When will the madness stop. :-(

 

References
Published at DZone with permission of its author, Deane Richan. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

John Denver replied on Sun, 2008/08/03 - 12:53pm in response to: Alex(JAlexoid) Panzin

Alex I'm agree of what you said, but JavaFX try to compete with Flash/Flex or Silverlight and that what I understand means get massive to the end users, JavaFX is not just a tool for custom enterpise projects as what I think is your target, I want to create a social network website with JavaFX but it doesnt work well in the Mac, On Linux lots of problems, the only platform it is working but really needs Java6_10 is Windows. Flex works on Windows and Mac perfect and I think in Linux have some minors problems but it works also so for my Project I think is more viable Flash/Flex than JavaFX.

Also JavaFX will never have good designer tools always will depend of Adobe tools, Flex is more integrated with Adobe tools.

Silverlight they will hit version 2 soon and supports Windows and Macs!, Of course Linux nope but that we all know the history of Windows and Linux but the team of Mono project they are porting Silverlight to Linux.

Conclusion:

1.Flex/Flash multiplatform with great tools, Mac/Windows/Linux (Dont forget Air for desktop apps or thin clients).

2.Sivlerlight2 multiplatform with great tools, Mac/Windows and Linux thanks to Mono.

3.JavaFX Works great in Windows with Jre6_10, In Linux is broken and in Mac more broken and the tools doesnt exist use Adobe tools.

 

The Winner is Flash/Flex or Silverlight, The big looser here is JavaFX.

All this what means, That JavaFX sucks and is a Fiasco.

 I really hope the SoyLatte project matures so with Java  I can continue to work without multiplatform problems but I will throw away from the window the JavaFX thing anyday.

Regards.

ff aaa replied on Sun, 2008/08/03 - 9:33pm in response to: John Denver

try enterin a web page with 5 flash ads in linux. silverlight in other platforms is still a joke.

James Williams replied on Mon, 2008/08/04 - 11:41am in response to: Camilo Arango

AIR and Silverlight have poor multiplatform support. AIR is very alpha on Linux and Silverlight is not quite there yet. There is a Mac version of Java 6, SoyLatte. With the advances that have been made by Landon Fuller et al, Sun would be stupid to try and start all over again. Lots of companies(incl Google) with devs that need Java 6 features and have MB/MBPs are using it. So if it's good enough for Google, why isn't it good enough for you?

Casper Bang replied on Mon, 2008/08/04 - 12:11pm in response to: James Williams

AIR and Silverlight works for Windows and Mac. Linux support is on it's way and unlike JavaFX, you are not required to learn a new syntax - in the case of Silverlight all you need is basic .NET skills.

I don't think your Google analogy means anything,  if you notice they prefer developing their own UI tiers (GWT and just plan normal Ajax) rather than use Java. Even their full fledged desktop applications like Google Earth and Picasa are based on platform-specific native applications rather than being based on Java.

James Williams replied on Mon, 2008/08/04 - 12:55pm in response to: Casper Bang

What I meant is that Google devs are using it in their Java work. Java remains an official language at Google. If devs at Google aren't holding their breath for Apple to get in gear, maybe normal Mac users shouldn't either.

I think JFX was a bad idea that could have been done better with prior art. AIR and Silverlight do NOT work to the same level of functionality on Linux so the statement that it is on the way does little for me. The same arguments applied to Java can be applied to them. Many of the cool AIR apps are unrunnable on my machine. It was years before Linux distros could run Flash 8 or higher reliably.

What I dislike is that the world acts like unless it is affecting Apple, it's not a problem. There is a solution for non-64bit macs, sure it doesn't look exactly as Aqua as it should but it's better than complaining.

John Denver replied on Tue, 2008/08/05 - 4:22am in response to: James Williams

Here the discussion is about JavaFX and JavaDesktop on the MAC, If you check the posts I bringed the SoyLatte comment beacuse also I'm fan of it but it only works on X11 GUI we need aqua for our Mac end users.

This is not a serverside development if it was that of course SoyLatte right now is enough but we need the client side, aqua, Swing whatever.

 By the way, Sun released JavaFX preview but without Linux support hahah so only Windows works, On the Mac well only 64bit intel macs but not in the broweser.

I see JavaFX doomed, I suggest take a look at Groovy with SwingBuilder/GraphicsBuilder it works now and we don't need JavaFX. SUN SUN when you will learn?!.

2c.

Alex(JAlexoid) ... replied on Tue, 2008/08/05 - 5:29am in response to: John Denver

I just wonder how out of context can your comment be....

A) Sun released a PREVIEW! Do you know what is a preview?
B) Last time I checked, Apple wanted to support Java on Mac on their own. It's not like Sun shoved it down their throat...
C) If your clients NEED aqua interface, then it's really not an issue with Sun, more like it's an issue between you and your clients.

On a sidenote: I am heavily anti Mac-fanboism, because I consider themto be very aggressive towards everone else and, frankly, juvenile. 

James Williams replied on Tue, 2008/08/05 - 9:51am in response to: John Denver

Sidewinder,

The Linux version works a bit except the transparency bits(very weird). Real aqua support is needed but I believe if more people used SoyLatte, Sun could put more pressure on Apple to open up those bits.

 I'm a member of the Groovy Swing team so we agree on Swing(X)Builder/GraphicsBuilder. It works now, in most cases doesn't require Java 6 (GB has a couple Java6 depos still), and most importantly, there are WORKING apps out there.

Casper Bang replied on Tue, 2008/08/05 - 10:09am

All the people saying "...don't really need Java 6.." or "...SoyLatte can be used for most..", do you realize that it's just like peeing your pants. It might feel warm and nice for a brief while, but within long that will be replaced by a very cold and uncomfortable experience. For instance, I just noticed that from NetBeans 6.5 you can no longer run on just Java 5 (http://wiki.netbeans.org/NB65EngineeringPlan):

 "The IDE will require Java SE 6 to run, although development of applications targetting previous Java SE versions will still be supported."

Welcome Java 5 to the land of legacy!

Fabrizio Giudici replied on Tue, 2008/08/05 - 12:00pm

For all the Aqua stuff: I don't know how many are aware of it, but the porting of Aqua to SoyLatte is not so far as one could think. Quaqua, Werner Randelshofer's, is a very accurate implementation of Aqua for Java, in 100% Java, with just a bit of missing pieces - it is even more accurate than Apple's Java in many respects. I've tried it with SoyLatte a few time ago:

http://weblogs.java.net/blog/fabriziogiudici/archive/2008/05/a_little_deskto.html

and it looked quite good at the time. The really missing point, which is outside of Quaqua scope and thus to be addressed with native code in SoyLatte, is to drop X11 bindings and get the thing to live inside a Cocoa window (and use Cocoa fonts).
 But I think you just need that top-level container, while all the inner controls are ok with Quaqua.

@Casper Bang, your "peeing in the pants" analogy is really cool and I'll write it down in my memorable quotes notepad ;-) Furthermore I had missed that Java 6 requirement for NB 6.5 (and - oh my - this is very shameful for me) - which sadly means that I'll have to retire my MBP (only 32 bit) six months earlier than I thought. Ouch.

John Denver replied on Tue, 2008/08/05 - 7:03pm

@Alex First of all why left out the Linux guys from the Preview?, I think is more important Linux for JavaFX than Mac at this point, I checked JavaFX is not bad it is a nice tech but I see it more for the programmer side than the designer, the designer will use Photoshop not JavaFX anyway, Also as Java developer Im worry that Java tech doesnt work in Mac, it is not Mac fanboism I dont care the OS, I care the Java as a platform. Apple wanted to do Java yes long time ago about 10 years but right now is broken, Sun should take the lead right now and fix Java Mac and more because JavaFX. It is not only my clients wants aqua I think everybody does cause the Mac is a platform that is growing with a lot of business opportunities and more for the consumer target well JavaFX it is more consumer towards I belive SUN said that.

@James yeah Im agree we should use more SoyLatte to put pressure on this situation, I have installed SoyLatte but the problem is I'm using Intellij on the Mac so I have for defualt the apple one hehe i need aqua... also i dont want to use X right now, Groovy and the Builders are cool.

@Casper use intellij or eclipse and you can continue use Java5, I dont see why the hurry for only Java6 in netbeans for JavaFX ok it need Java6 and more Java6_10.

@Fabrizio it is amazing the news about Quaqua so it is really possible SoyLatte could be a reality soon for the Mac.

 PS. Really when I was a C programmer I cared about the OS but with Java is a dream that I dont need to think in which platform Im, Sometimes Im in windows, Linux or Mac. With Java the Fanboism is over but I care Java as a plaform continue to be WORA, true multiplatform. I dont want to deal with OS details for that I go back to C or C++.

Comment viewing options

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