JSF reduces scalability

JSF reduces scalability because it must store the view's component tree between requests.
I don't  understand this text.

Could you please explain this ?
Who is Participating?
Ok I'll explain it but I don't necessarily agree with the statement.

Let's define scalability as the ability to cope with increased loads by adding additional hardware / servers forming a cluster.

A JSF view state is held in a form of a component tree stored in HttpSession. The answer (C) implies that for the application to be scalable, session state should be replicated across the cluster but the replication of the component tree is difficult or impossible (that's what the answer says).

I don't quite agree with both (C) and (D).

(C) I think it is actually possible to replicate the whole session state, including JSF component tree, across the cluster. However, in a busy environment, replicating it after every request has a negative impact on performance.

As per (D), in my view, the question has nothing to do with scalability at all. Additional computational overhead affects performance but not scalability. On the contrary, in increase the scalability to copy with the additional overhead.

So probably both answers should read "JSF _CAN_ have negative impact on performance comparing to vanilla servlets"
I think I can but please post the question in full.
cofactorAuthor Commented:
umm...thats not required you know....that will confuse you . I just need to understand what that text  means . If  there were a context to this text , then I would have definitely posted.
Anyway,  as you are asking the details here it is ...

A company has been using servlet and JSP technology for over seven years. The company's IT  department is considering migrating to JSF technology. Which two drawbacks must the ITdepartment consider during this migration? (Choose two.)

A. JSF provides only a static set of built-in components.
B. JSF reduces scalability because it synchronizes the creation of the form's component tree.
C. JSF reduces scalability because it must store the view's component tree between requests.
D. JSF reduces scalability because of the additional computational overhead of the JSF life cycle.
E. JSF provides no built-in components forcing the development team to build everything from scratch.
Answer:  C,D
I  just would like to understand the details of  C.  As I told ,  you may not need all these details  so could you please explain C  only ?  I'm looking into books and not  able to come to a conclusion.
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

I think that it all depends on the definition of scalability. As you said: " the ability to cope with increased loads", it does take a noticeable amount of memory to store the view tree and, if you need to do so on multiple servers, it will decrease performance considerably thus reduce scalability.
cofactorAuthor Commented:
>>>A JSF view state is held in a form of a component tree stored in HttpSession
could you please explain this part a bit more. what kind of componenet tree ? any example please.
Have you had an error page in JSF? There you can usually see the component tree. Here is a picture that represent a component tree (http://img89.imageshack.us/i/136rs.jpg/) It is stire as xml.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.