Wednesday, 25 July 2007

The language for Ajax with ICEfaces is JSF


One of the central themes of ICEfaces is the language that the developer and designer use to define their Ajax application. The important point is that it has nothing to do with Ajax at all. Ajax should be transparent, with development and design taking place at the right level of abstraction for the application. JavaServer Faces already provides a standard language: the model is developed as ordinary JavaBeans and the view is designed as XHTML pages dynamically bound to the model via expressions.

A language for Ajax Push that preserves Developer and Designer roles.

The combination of these two languages (particularly if Facelets rather than JSP is used) is sufficient for defining the model and the view of the application. With the behavior and the appearance of the application specified, it is then the responsibility of the framework to project the application onto the particular user interface technology available in the best possible way (in today's infrastructure, this is an Ajax application). If a change to one component should result in a change to another component because of how the two components are related through the model, it is not the page designer's responsibility to identify this relationship; it should be emergent directly from how the two components are bound to the model.

In other words, the ICEfaces developer is an application developer, not an Ajax developer.

Posted by ted.goddard at 12:21 PM in Entries by Ted Goddard

JRoller via MetaWeblog API

A blogging client, such as BlogEd, can use the MetaWeblog API to upload blog entries (the idea is that this could be more user friendly than the browser interface, at least until we make an ICEfaces front-end for blogging). For JRoller , username and password are as expected in the BlogEd configuration, but a bit of debugging with curl was necessary to discover the service URL. The correct URL appears to be

      
    http://www.jroller.com/roller-services/xmlrpc    

(This entry was submitted via MetaWeblog API, but it has not appeared in the blog; perhaps the configuration is not correct.)

Posted by ted.goddard at 12:21 PM in Entries by Ted Goddard

Wednesday, 18 July 2007

Ajax Tools for BEA WebLogic With ICEfaces


You can now use the BEA Workshop tools to visually develop ICEfaces applications. Tom Stamm provides a tutorial to get you started. The tool gives you a schematic visual representation of the page, allowing you to drag and drop new components into the containers you've defined:

Gary summarized it as follows:

The ICEfaces tooling feature is an extension of the award-winning JSF tools already shipping in Workshop. It's fully AppXRay enabled, which provides edit-time error detection, Smart Editor assistance with tag attributes, and smart navigation between markup, JSF configuration files, and Java types -- all the familiar capabilities that Workshop JSF tooling offers can now be used to help develop an Ajax web application. The ICEfaces extension was developed by Tom Stamm, an engineer on the Workshop team.

One of the main goals of JavaServer Faces is to allow applications to be built with visual tools; clearly we are seeing this now with tools such as BEA Workshop.

Posted by ted.goddard at 12:09 PM in Entries by Ted Goddard

Wednesday, 11 July 2007

ICEfaces 1.6 released


ICEfaces 1.6 has been released! The most notable features are: fully functional Ajax Push to multiple windows, improved JBoss Seam support (including seam-gen), improved Liferay Portal support, and improved JSF 1.2 integration. There are also some preliminary features that are very interesting, such as the TomcatPushServlet that makes use of Tomcat 6 NIO (analogous to the Jetty continuation support ICEfaces has had for some time), and the Spring Web Flow integration.

We welcome you download ICEfaces and try it out (including the full source code, available under the Mozilla Public License). A lot of the hype about Ajax makes it seem like you need to descend into JavaScript to create Ajax applications. With ICEfaces, that's not the case at all: JavaServer Faces provides a completely sufficient language for Ajax applications, it's just a matter of interpreting that language correctly.

We want to know what you think about ICEfaces; so please record your experience in your blog, and we'll send you a T-shirt with the cool ICEfaces logo.

Posted by ted.goddard at 12:09 PM in Entries by Ted Goddard