Pivot a Top Project: Ready to Challenge Flex, Silverlight, and JavaFX

DZone 's Guide to

Pivot a Top Project: Ready to Challenge Flex, Silverlight, and JavaFX

· Java Zone ·
Free Resource

Nearly a year after entering the Apache Incubator, the Pivot project officially graduated to a top-level Apache project.  The ASF board passed the resolution for graduation in December and their announcement today makes it official.  Pivot is a Java-based RIA toolkit for writing applications using a combination of Java and XML.  A Pivot application can run as an applet or a standalone.  Earlier this month, the project released Pivot 1.4.

People that have been around the web for awhile remember when Java applets were just toys.  The arrival of Java-based RIA tools, like Apache Pivot, produced more sophisticated environments for developing advanced applications.  Pivot came about because Greg Brown and Todd Volkert, two founders of the project, were frustrated with the lack of good Java tooling for client-side applications.  Many Java developers had similar gripes, which lead to the creation of tools like JavaFX and Swing, but Greg Brown had issues with these tools as well. 

Swing has been around for awhile, Brown said, but it hasn't really been able to keep up with heavy-hitters like Flex and Silverlight.  JavaFX on the other hand is not a tool for Java developers, Brown said, because you have to learn a new JavaFX scripting language and new APIs.  The Pivot FAQ says that JavaFX and Pivot appear to be serving two slightly different use cases: "Pivot is designed primarily to address the 'Application' in RIA, whereas JavaFX appears to be geared more towards the 'Rich' part of the acronym."  The FAQ states: "In a sense, Pivot represents what we think Sun should have done instead of JavaFX."  

Pivot offers a comprehensive set of standard UI elements and several features that simplify the development of modern GUI applications.  These include data binding, animated effects and transitions, web services integration, and an XML markup language called WTKX for declaring the structure of a UI.  The most recent version of Pivot is more polished and adds a few more features.

WTKX Source Code:

<Border styles="{color:10, padding:0}"
<ScrollPane preferredWidth="240" horizontalScrollBarPolicy="fillToCapacity">
<TreeView wtkx:id="folderTreeView">
<content:TreeViewFileRenderer useNativeIcons="false"/>

Pivot 1.4 is mainly a documentation and bug fix release, but there are a handful of new features.  They've added missing resources in generated .jar files for compatibility with the Maven repository.  Pivot now supports native XML and has XPath support to the XMLSerializer.  A number of usability improvements were also added.

Here are some of the positive user comments that Apache included in their press release:

"I've tried the demos and I was stunned," said Pivot user Trelieux Einagen. "The framework uses easy to understand markup for the applet front end while at the same time taking advantage of the power of Java for business logic and server side processing...I think the Java community in general is fortunate enough to have those guys at Pivot stand up and build something that can actually compete RIGHT NOW with the likes of Flash/Flex and Microsoft Silverlight/WPF without losing your sanity."

Pivot user Scott Lanham said, "The current default theme has a nice clean look and feel...I am impressed with the good selection of widgets. They appear to cover just about every need of an application...Well done with Pivot!"

"Thank you guys with coming up with Pivot," said Java developer and Pivot user N. Forbes. "Java really, really needs a smooth, coherent RIA next generation framework to 'seriously' compete with the likes of Flex and SilverLight/WPF.  I looked at the source code and screamed out in joy!  You guys may actually end up bailing out the Java RIA from pure academic obscurity and back into the more popular sphere of mind."

You can find plenty of live project demos and documentation at the brand-new Apache Pivot website.  Download Apache Pivot and see how it stacks up against other RIA tools.  Take a look at the tutorial for more info on Pivot's features.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}