1 Outlook

And we’re ready to go!

We have already studied the use cases, domain classes and input screens for our application. According to our target architecture, JSF Facelets implement the input screens, while Java classes function as controllers by implementing the application logic. In turn, the controller classes require the domain classes (models) of our application to enable their implementation.

We will not be implementing a connection to a database within this iteration.  However, we can still display and edit some data in the application by using our own Java class to supply hard-coded data for the application.

Since we are following a bottom-up approach, we will begin with the implementation of the domain classes. Next, we will get in touch with the cloud IDE Codenvy and set up our project. After that, we’ll concern ourselves with the internationalization of our application[1] and the creation of a reusable template for the Facelets. In doing so, we will have created a basis whereby one use case can be implemented directly after another. Our approach for this process will be to implement the controller class for each use case and then the corresponding Facelet. The implementation of the use case Display and edit campaigns will be covered over a number of sections, while the remaining use cases will be taken care of in a single section once this has successfully been accomplished.

Whenever new technologies are required for the implementation, these will be explained in advance. For the sake of clarity, we will limit the scope of the explanation to the classes, tags and attributes that are actually being used; we therefore recommend that you consult the official view declaration language (VDL) or Java API documentation from Oracle on an ongoing basis in parallel to the workshop. The documentation, which can be obtained with the specification (Burns, 2014) (http://jcp.org/en/jsr/detail?id=344), is particularly suitable for use as a reference guide for the tags or classes that are used within the scope of this workshop.

Our sample application allows us to explore many of the opportunities and concepts offered by JSF, though for reasons of space, we cannot cover them all. We will not, for example, be going into details regarding the processing model of a JSF request, although this is important for a deeper understanding of JSF at a later stage. To deepen and enhance your understanding of JSF, we therefore recommend that you consult specialist literature such as (Leonard, 2014), (Vohra, 2014) and (Saleh, 2013) either in parallel to the workshop or after completing it.


Use the message board below to give the authors your feedback or to discuss this page’s topic with other readers (in English please!). Please don’t expect the authors to answer directly, but they might update the content of this site according to your feedback.

  1. Known in specialist literature by the abbreviation i18n