There has been some confusion before Java EE 7 about which annotations are correct to declare the managed beans. The issues are that the JavaServer Faces specification predates the later standard from the CDI and the fact that the scoping overlaps. The history of scopes comes from the original design and definition of the servlet container and providing convenience to the application developer. A scope is simply a map collection of name/value pairs. It helps to think of them as
java.util.Map type hash map collections. The scopes differ in their life span.
@RequestScoped annotation denotes a controller with a lifecycle that has the duration for the Faces request and response. The request-scope is short-lived. It begins when the web client submits an HTTP request and is then processed by the servlet container. The scope ends when the response is...