I came across the terms “managed bean” and “backing bean” in several forums. Many people think both are the same. But, there seems to be a slight difference. Can any one help me to understand the exact difference between these two terms?
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Changing my initial answer – there is no meaningful difference between the two. The tutorial says that backing beans are later declared as managed beans. So, to summarize:
I’ve never actually used the term “backing bean”, because I found no use to it. So you might be better off using only “managed bean”. Note that in JSF 2.0 (and in CDI) you have
@ManagedBean– so your bean is a managed bean.BalusC suggested that “backing bean” is the definition, and “managed bean” is the instance. While this might have been the original idea of JSF creators, I don’t think it is worth supporting it. CDI and spring for example don’t have different term for “bean definition” and “bean instance”.
The JSF 2.0 specification mentions the term “backing bean” only a few times, with no definition whatsoever. In addition to that it mentions “backing bean class”, which might mean that “backing bean” != “backing bean class”, which brings further confusion.
So to conclude – for me both are interchangeable, and I’d stick to only using “managed bean”