Introducing Java PureFaces!

by Matt Pickell for JavaPureFaces

Introduction to Java PureFaces!

Developing the Web Tier is a big part of designing and developing a web application. Many frameworks exist that attempt to improve this part of the development. These frameworks simplify the process, providing ready tools and improving code reuse.

Most frameworks are developed around a web designer/java developer job split, providing a simple API to the web designers, and an XML/HTML file and a java API for the developers. Examples are Struts and JSF.

Other frameworks are aimed only at java developers and provide a Swing-like API, allowing the developers to develop a web application with only the java language. The developer code can be very object oriented and does not need to be concerned about interacting with HTTP/ JSP/Tags etc. An example of this type of framework is GWT.

Building off of both of these, B6 Systems has created a new framework for Java developers! We call it Java PureFaces. Java PureFaces is built on the very popular JSF framework, but allows the web tier to be designed completely in Java — no massive library of JSP/JSF pages or configuration files necessary.

New framework

Java PureFaces provides a pure Java framework for building the web tier. Java developers can use good object oriented solutions, increase code reuse, speed up development, and simplify code maintenance without worrying about many of the web/http concepts like HTTP, JSP, XML, Tags, HTTP sessions, etc. The API is very simple and easy to learn and use.

Like JSF, Java PureFaces binds object attributes into the GUI, and binds commands and link buttons to object methods. Also, JSF components are used to render the HTML. Unlike JSF, Pure Java Faces attributes and commands can be bound to any POJO object, not only to a backing bean. An advantage of this method is that the bindings themselves can be tested with JUnit.

Because the framework uses JSF, it is very extensible. In order to create a new component, just extend the UIComponent JSF class. Also, only a single HTML page and backing bean are necessary as the container for the web application (this simplicity does mean that, like some other frameworks, you cannot refresh the page or use the browser back button).

Check back, I’m going to be adding more information soon!

Leave a Reply