Mobile app with jQuery Mobile based on JSON API

I found this site: from my Twitter stream a few days ago. There is not much to it, just for fun. I noticed that it has JSON API. I thought, why not build a mobile version using this API in Tiggr with jQuery Mobile.

I built the app in about 7 minutes. You can try the app here in desktop or mobile browser (or click the screen shot):
Tiggr Mobile Apps Builder

You can also get to it via this QR code:

Try this on your mobile phone

Go to this URL: on your mobile phone. It’s an interactive and clickable mobile UI prototype created in Tiggr, using components from jQuery Mobile. You can almost completely prototype the UI before starting the actual development. What do you think?

RichFaces 4 Alpha 2 is now available, project template

The RichFaces team has made a major step toward RichFaces 4 by releasing Alpha 2 version. I’m hoping to see GA in September. Keep in mind that not all components have been migrated to version 4 yet. The components that are available right now are listed below.

Some highlights in RichFaces 4 Alpha 2:

  • Redesigned and improved Component Development Kit
  • Ajax core components set almost completely migrated.
  • Ajax request smart Queuing mechanism implemented
  • Rich Data Iteration components created
  • Skinning including standard control skinning feature was migrated

More information on this release from Jay Balunas. To download, setup Maven project, and release notes click here.

If you want to get started very quickly, download this project template with RichFaces 4 already configured. If you are using Eclipse, you can import the project as shown below. You can also just unzip the template and import the project with whatever tool you are using. The template was tested with Tomcat 6.

  1. In Eclipse, select File/Import/General/Existing Project into Workspace…
  2. Click ‘Select archive file’
  3. Click Browse… and point to the downloaded zip file
  4. Click Finish
  5. Run start.xhtml page, it has a very basic Ajax application.

Continue reading “RichFaces 4 Alpha 2 is now available, project template”

JavaOne, JavaFX 1.2, JavaFX Studio plug-in for Eclipse, Flamingo

It’s going to be a busy week, lots of things happening.


I have one general session (on using JavaFX with Seam) and a number of lighting talks in JBoss and Sun booths. I will also be signing Practical RichFaces book at the JavaOne book store (you will get 20% discount). My complete schedule.

JavaFX 1.2

JavaFX 1.2 was released over the weekend. There is now official support for Linux. Here is a great post with all the details from Stephen Chin. Check out Dzone JavaFX Refcard also from Stephen.

JavaFX Studio plug-in for Eclipse

Exadel will be releasing it’s newest JavaFX Studio plug-in for Eclipse tomorrow. The plug-in comes with various wizards and features to help develope JavaFX applications. Read previous posts on the plug-in.


There is no easy way to connect JavaFX to back ends such as Seam or Spring. Flamingo is a RIA framework that easily connects JavaFX with Seam/Spring (and Flex with Seam/Spring). Flamingo has been available for about a year now. New version 1.8 will be released this week and it will be compatible with JavaFX 1.2 . Watch for an article on about using JavaFX with Seam with Flamingo.

Finally, if you are at JavaOne and want to chat about any of these, just drop me an email.

Recent webinar recordings: E7 Development Suite, RichFaces Webinar Series #1

RichFaces Webinar Series #1 – Starting with RichFaces
View webinar recording

Next webinar is April 21st, 2009, 2PM ET – More Features and Concepts

Easily Connect Business Processes with Rich Internet Applications & Services
View webinar recording

Speaking at Silicon Valley Web JUG – March 17th

I will be speaking at Silicon Valley Web JUG next Tuesday, March 17th. More details here. One lucky attendee will get a free copy of Practical RichFaces book.

1-day RichFaces workshop in Vienna and discount

I will be teaching 1-day RichFaces workshop in Vienna, Austria during JSFDays 09. If you want to learn RichFaces in just one day, this is the place to be. If you email me (max at exadel dot com) I will give 34% discount for this workshop (conference fee is separate).


This workshop will introduce you to RichFaces by covering the most important features, concepts and tags. We will start with concepts (sending AJAX request, partial page rendering, partial processing) and then move on to a4j: tag library, rich: tag library and skins. Attendees will learn all the important concepts and features they need to know to start developing with RichFaces.


  1. Start with hands-on application that covers most of the concepts
  2. RichFaces concepts
    1. Sending an AJAX request
    2. Partial page rendering
    3. Partial server processing
    4. JavaScript interactions
    5. Controlling traffic
  3. a4j:tags
  4. rich: tags
  5. Skins

Don’t forget to bring your laptop. All software will be installed at beginning of workshop.

Learn RichFaces in 1 day in Vienna, Austria

Learn RichFaces in Vienna, Austria in just one day by attending my workshop during JSFDays*09 conference.

Email me (max at exadel dot com) for 34% discount for the workshop. Workshop price is separate from he conference price.

Running JavaFX applications in a browser

One of the promises of JavaFX is ability to run inside a web browser just like Flex applications run inside Flash player. Here is how to deploy and launch the application in a web browser. With JavaFX, the application is running inside Java virtual machine or maybe we can call it JavaFX player.

Using this example, to compile we typed:

javafxc Echo.fx

To run this application:

javafx Echo

If you look in directory in which you compiled, you should see similar output to this (only showing *.class files):


We need to archive all these files for deployment:

jar -cvf Echo.jar *.class

Finally, create HTML page:

        JavaFX Echo Application

JavaFX Echo Application

javafx( { archive: "Echo.jar", draggable: false, width: 350, height: 200, code: "Echo", name: "Echo" } );

The JavaScript file referenced will make sure you have the right Java runtime.