Senior Architect at ICEsoft
Ted Goddard is a Senior Software Architect at ICEsoft Technologies and is the technical lead for the JavaServer Faces Ajax framework, ICEfaces. Following a PhD in Mathematics from Emory University that answered open problems in complexity theory and infinite colorings for ordered sets, he proceeded with post-doctoral research in component and web-based collaborative technologies. He has held positions at Sun Microsystems, AudeSi Technologies, and Wind River Systems, and currently particpates in the Servlet and JavaServer Faces expert groups.Presentations by Ted Goddard
Ajax Push and ICEfaces for enterprise collaboration
The web has evolved from a document repository into a multi-user collaboration medium, shaped and created by its users. Ajax Push gives the server the ability to update any part of any page at any time, transforming every application into a new communication tool, connecting users to each other through web server mediated channels. "Mobile Ajax with JSF
This session provides an overview of the mobile web and how the constraints are satisfied by the ICEfaces Ajax framework, and presents a number of JSF application techniques that allow both mobile and desktop users to be addressed simultaneously. "Ted's Ajax Adventure
Appropriately Applying Java to Ajax
Thursday, September 25, 2008
ICEfaces currently uses XMLHttpRequest to implement Ajax Push, but will better networking capabilities be available in the future, such as WebSocket? Join us to discuss WebSocket, Ajax Push, and Comet at the Silicon Valley WebBuilder Panel on October 29, 2008.
The panel has a great lineup of people who don't always agree (this is a good thing for a panel):
- Alex Rusell (Dojo)
- Dion Almaer (ajaxian.com)
- John Fallows (Kaazing) :
- Ted Goddard (ICEfaces) :
ICEfaces and cometd take fairly different approaches to solving "push" on the web.
The cometd approach is to generalize messaging between JavaScript objects so that they can exchange arbitrary messages with each other (even if they're in different browsers). The server may act only as a reflector. In other words, JavaScript is regarded as first-class and messaging between distributed objects characterizes the application architecture.
The ICEfaces approach is to make Ajax fully asynchronous: with Ajax we can update the page incrementally (without a full page refresh); Ajax Push allows the application to issue incremental updates at any time, independently of user events. The result here is that the server is primary and JavaScript is used only to implement the page update mechanism. The standard Java web application architecture remains in force.
Will WebSocket help us implement such things? What about HTTP 1.1 pipelining for XMLHttpRequest? Please join us to find out.

Monday, September 15, 2008
We'll be bringing out more extensive video sessions on ICEfaces, Ajax Push, and Portlets recorded at JSFOne, but in the meantime, here are some short interviews that you may find of interest:
- Jeremy Geelan with SYS-CON TV (focusing on Ajax Push as a necessary part of Ajax and how it can allow you to make better business decisions through timely information)
- Andrew Glover with JavaWorld (a brief, but technical introduction to how ICEfaces is used and how it works)
Wednesday, September 10, 2008
ICEfaces applications are reported to work on the BlackBerry Simulator JDE v4.6.0; the question is whether they work on a real device. Has anyone had a chance to test the ICEfaces demos on a BlackBerry Bold?
Wednesday, September 10, 2008
Seam in Action is now available:
Seam is very powerful, but there's a lot to learn, so picking up a book like this really is essential. After using JavaServer Faces in a complex application, you will quickly find that the navigation and dependency injection capabilities in faces-config.xml just aren't sufficient. Seam is what you need.
The best chapter is, of course, Chapter 12 on Ajax. We really appreciate the time that Dan spent working with people at ICEfaces.org to enhance this chapter. In particular, Judy worked to port the Open18 application to ICEfaces. There is no question that the best information in print for ICEfaces is now found in Seam in Action.
I really only planned to mention Dan's book, but then this three legged dog showed up on our roof, and that's strange enough that I had to include it:
Friday, August 1, 2008
JSFOne is rapidly (if you account for summer vacation) approaching: September 4th - 6th, near Washington D.C. It looks to be the most comprehensive JavaServer Faces event yet and will be a good opportunity to learn about and discuss JSF 2.0. As an ICEfaces community member you are eligible for a substantial discount if you register before August 15th (let us know if you missed the email with the registration code). Here are some of the sessions on ICEfaces:
- Ajax Push and ICEfaces for Enterprise Collaboration: How to use Ajax Push (aka "Comet" with JavaServer Faces)
- Mobile Ajax with JSF: Development tips and demos for JavaServer Faces on mobile devices, such as the iPhone
- Filthy Rich Portlets with ICEfaces and Liferay: How to develop portlets with rich user interfaces and how to integrate them with each other through Ajax Push
We hope to see you there. Also, don't forget to check out Dan's new book, Seam in Action (especially the Ajax chapter).