JSF Mini Book – Tips, concepts and good practices

Creating a JSF project

Let us create a JSF project to use some of the code presented here with Eclipse Indigo JEE and as server we will use the Tomcat7. After you download it add the Tomcat in the Eclipse in the Servers tab.

For Eclipse there is a plugin named JBoss Tools that helps in the JSF software development. The JBoss tools plugin provides to the developer an efficient auto complete in the xhtml pages, xhtml page preview without the need of start the server and other functionalities.

To install the JBoss tools you just need to access the menu Help | Market Place > Search. A dialog will open with a field named “Find”; type in the “Find” field: “JBoss Tools”. Click “Go” > JBoss Tools Indigo > Install. In the opened window select the following options:

  • Context and Dependency Injection Tools
  • JBoss Tools JSF
  • Project Examples. This option will give you a lot of created projects, but to this post this option is not required.

Let us create a new Web Project?

Go to the menu File | New > Dynamic Web Project. Name your project as “ProjectJSF”. In the “Configuration” field choose the option: “JavaServer Faces 2.0 Project”. The next step is to click on “Next” and “Next” again in the new window. Click on the option “Generate web.xml deployment descriptor” to indicate to Eclipse that the web.xml file must be created. Click on “Next” and in the next screen select “Disable Library Configuration” in the “JSF Implementation Library”. To end the creation, just click in “Finish”.

The JSF is a specification that defines the framework behavior through interfaces and rules. There are several JSF implementations that fulfill the JSF specification requirements. We can find some implementations like: Mojarra, MyFaces. Our project will need a JSF implementation to work correctly; we will use the Mojarra implementation that is the Oracle JSF implementation.

Another library is required, that is the JSTL (JavaServer Pages Standard Tag Library). This tag has some basic utilities like: value format, loops and commands like if/else.

To download the Mojarra click here; to download the JSTL click here. After the download of the libraries are finished, just put them inside the folder: “ProjectJSF/WebContent/WEB-INF/lib”.

18 thoughts on “JSF Mini Book – Tips, concepts and good practices

  1. Really cool material! I agree with Tim. If this could be distributed in pdf format, you will become a little more famous. :) Thanks, good job!

  2. I’m not able to see this library applied in my program.
    Output is: Real Madrid, Champion!!! (No image and style)

    Please let me know what I’m missing.

  3. I was trying to learn Spring MVC for last 2 months, Every time i try to start, i get stuck somewhere. 2 Months passed, and i did not learn anything. I purchased two books for spring. Finally i quit Java web programming. One day I thought to give a try to JSF. and found some tutorials online, worked on them and I loved it. Your tutorials are going to help me a lot.
    Thank you so much.
    I would like to tell people here, don’t go near spring, It’s a piece of crap.

    • Arslan,

      Thanks for the feedback.

      My next post will be a full web application with Spring MVC.

      Maybe this application will help you understanding better the Spring, it is a good tool! =D

      See you later.

  4. With your code lines


    eclipse was giving error that:

    Multiple annotations found at this line:
    – Invalid location of text (“) in tag ().
    – Invalid location of text (=”) in tag ().
    – Element type “h:outputStylesheetlibrary” must be followed by either attribute specifications, “>”
    or “/>”.

    So I’ve corrected it by changing lines to

    But I think as you mentioned in case of versions of resources, it will automatically picks up latest version. but the code I’m using will not control the version. It looks like hard-coded.

    What you say about it?

    Moreover, You wrote:
    “To use a mapped library by the ResourceHandler let us create a folder named “index.xhtml” inside the folder “/WebContent”.”

    I think you have not created a folder name “index.xhtml” but you have created a file named “index.xhtml”. If I’m right then you need to correct it. :)

    • Hello Arslan, how are you?

      Unfortunately the xml are not displayed here. =/

      Could you send me an email with the code and the texts that you wrote?

      Thanks for your support and passing by.

      My email is contato (at] uaihebert (d0T) com


Leave a Comment