Tutorial web development (with JSF)

Web development – for lots of today’s applications this is a kind of must have. But, for many programmers this feels a bit unusual. They cannot develop an application build up by just one programming language, controlling everything by just one program (maybe consisting of a bunch of loosely coupled tiers). Browser and application, these are apparently two distinct worlds. The browser just queries some content from a server to display it at the client, and then forgets about the connection. Thus, to continue with the application, the client must include some identifier into the next call to enable the server remembering and restoring the last state. JSF as part of the Java universe is made for this. But you need more. For example persistence. In a Java EE 6 world, this is done with JPA. And at client side, its HTML, CSS and some JavaScript. This is, what this tutorial is made of. I’ll publish this in loose series. This entry page will lead you to its content.

Related topics:

Please feel free to use all content of this tutorial, as well as all my articles on my WebSites, for your private purpose only. If you like to use it or parts of it for non-private purpose, please request me.

All content is written by me to the best of knowledge. But, I can’t guarantee, everything being absolutely correct. If you find any bug or ambiguity or if you have special questions, please let me know or leave a comment.

Do you like to read more about JSF and other related technologies?

Purchase my book Web Development with Java and JSF. It’s a living book: Once purchased, you’ll be able to download all future updates for free.


BTW, operating this web site and providing content for free is a costly business (hardware, software, energy and a lot of time).

By purchasing one of my books you help me to continue this blog. Thank you for supporting me to provide you interesting content.

Enjoy and be successful!

Michael Müller

11 thoughts on “Tutorial web development (with JSF)”

  1. I found this tutorial very useful.Being a beginner to the web development field I could learn a lot of important things in the web development arena.Thanks a lot for sharing this.

  2. Thanks for the blog. Sorry I missed the big load test on monday. I hope you got what you needed anyway.

    It certainly seems to load very fast. Most pages seem to just “blink” on.

    Sometimes you have an ad that appears and the entire page stops loading while that ad comes in.

    For example. Visiting the following page will show one block of text and the first screenshot. Then it hung for a few seconds, and then the ad and the rest of the page blinked in.

    I don’t have a problem with ads. but it seems a shame that you otherwise instantly loading web pages are stalling in the middle.

    Suggestion: Tell your ad provider to get the same update you did! Or keep the ads off the first page. People won’t notice if the page below the fold fails to load instantly.

    1. David,

      Thanks for checking and your detailed answer. As a consequence I removed most of the ads.
      I just kept the advertising for my own books. I hope people will still by one of them to support me running this blog.


  3. Hello Mr Michael, i’m a bit confused about java web development. Has java forgotten about jsp or its no longer reliable again cus i’m new here and i don’t want to get confused.
    Thank you.

    1. Hello,

      JSP are still available. JSP are build atop Servlets. And JSF is implemented as Servlet too. In it’s early beginning, JSF used JSP as view definition language (VDL). Later, a new VDL (Facelets) had been introduced, which fits much better than JSP. Beginning with JSF 2.0, all new key features are implemented for Facelets only. JSP are still supported for compatibility. Don’t use it in new projects.

      JSP might been used outside JSF. But, I’m blogging about JSF. Thus I usually don’t talk about JSP.

      I hope, I could clarify a bit for you?


  4. Hi, please can you revisit the CSS part, am not able to load any or the resources. Am using a maven application and the css file is placed in /TinyCalculator/src/main/resources/css directory yet is is not able to locate the file.


    1. Benjamin,

      I build my early examples using Ant. For a maven based project, you need to place your CSS file into /TinyCalculator/src/main/webapp/resources directory.

  5. Thanks for this, I am a web development student currently in college, so having these resources is going to help me a lot, I really appreciate it.

  6. Thank you for your blog. It permet me to learn lot of things about Java. Just this words to start with your blog.

    french is my mother tongue escuse my mistakes in english.

Leave a Reply

Your email address will not be published. Required fields are marked *