Face Up?

[Infragistics] Jess Chadwick / Tuesday, November 20, 2007

Most J2EE developers tend not to think much about the presentation layer. After all, its just HTML, right? Its simple and straightforward and compared to working with EJBs, Spring, JDO etc. there's just not much to it. But remember, the front end is the only thing the users see and its the only thing they care about. I've seen more than one beautifully structured application tossed in the trash because the users didn't like the way it looked.

If you've developed GUI applications you're probably painfully aware of the limitations imposed by the browser. Basically:

  1. Interaction with the server is limited to form submission and anchor tags.
  2. There is no simple way to bind input fields to server-side data or to events.

Data-binding and events are such common needs in programming that virtually all IDEs provide a simple way of managing them which is as code-free as possible. The J2EE world often seems for behind in this regard.

With Struts, we've begun to see data bindings: we've simplified data validation and we've automated a lot of the mechanical coding for page navigation. But Struts still ties you to the HTML "look" and does nothing to improve server interaction.

With AJAX we're beginning to see ways to improve server interaction. Asynchronous call backs allow us to update the page without having to rewrite the headers, footers and everything else.  

So, you might argue, with these two technologies we're most of the way there.