Granny's Programming Pearls
"inside of every large program is a small program struggling to get out"
JavaRanch.com/granny.jsp
Win a copy of Building Blockchain Apps this week in the Cloud/Virtualization forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Paul Clapham
  • Liutauras Vilda
  • Knute Snortum
  • Bear Bibeault
Sheriffs:
  • Devaka Cooray
  • Jeanne Boyarsky
  • Junilu Lacar
Saloon Keepers:
  • Ron McLeod
  • Stephan van Hulst
  • Tim Moores
  • Carey Brown
  • salvin francis
Bartenders:
  • Tim Holloway
  • Piet Souris
  • Frits Walraven

Getting started with JSF - book - question

 
Ranch Hand
Posts: 458
6
Netbeans IDE Oracle Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Jesper,

What are major drawback of JSF comparative with other technologies from Microsoft ,for example?

Sometimes is necessary to do server side validation and/ or client side validation.

in Java Server Faces  , which is a framework, how is the the approach?

Thanks in advance
 
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Dana,

There are many different frameworks for building web applications. You don't even need to compare it to Microsoft's solutions - in the Java world itself there are already many different frameworks.

One of the distinctive properties of JSF is that it's a component-based framework. You create your web application out of reusable components, and you can use libraries containing ready-made components. A component can be almost any part of a JSF application, from just a button to for example a table with pagination and sorting features. There are a number of libraries available with JSF components, for example PrimeFaces.

The advantages of this are that it gives you a way to organize your application and that it makes it easy to reuse parts. The disadvantages are that you generally have less control over the HTML pages that are sent to the browser - the components themselves produce the HTML, and if you need to customize the HTML or the styles (CSS) then that can be more complicated than with a framework where you work with the HTML more directly.

There are other component-based frameworks besides JSF, such as Apache Wicket, but JSF is part of the Java EE standard.

There are also other web application frameworks which work in a different way. For example, Spring Web MVC is an action-based framework instead of a component-based framework. With Spring Web MVC, you write the HTML for the web pages all yourself (using a template language such as Thymeleaf) and then you write controller methods to handle actions such as GET and POST requests to specific URLs. This is a bit more low-level than a component-based framework such as JSF.
 
Bartender
Posts: 21767
148
Android Eclipse IDE Tomcat Server Redhat Java Linux
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Speaking of alternate J2EE frameworks, let me add 2 that I've worked with.

Apache Struts is the precursor to JSF. It's based on what they call a "Model 2" framework, which is a somewhat imperfect implementation of MVC. A lot of shops in my benighted town run Struts and Struts is what I used before JSF came along. I even published an introductory article on Struts in Java Pro magazine back around 2001.

Another very interesting, if more obscure framework is Cocoon. Cocoon is based on doing interesting things to and with XML.
 
Farmers know to never drive a tractor near a honey locust tree. But a tiny ad is okay:
Java file APIs (DOC, XLS, PDF, and many more)
https://products.aspose.com/total/java
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!