Hi subba, there're several ways to design your application, so first you need to ask you for some of these:
1. How many users will use your application (at the same time).
2. Will you require cluster (fail/over support)?
3. Do you have access to a server application? (many customers don't have a stuff in their team to admin the J2EE servers properly)
4. How big is your application? (the screens are not a good measure, you can have 2 screens... google has it... and process a huge logic from behind)
5. What about the security level? will be a sensitive information application? (banking? customer information?)
etc.
But keep in mind,
you should follow the best design principle of all (K.I.S.S.) keep it simple st. if you don't need Stateless, EJBs, etc, you should go to the easier configuration of all:
JSP (JSF is a good MVC), DAO for your persistence, and that's it. If you need a powerful application, with scalable options, and so on... use some combinations of JSF, Sessionbean Stateless and DAOs (yes... without entities). But, if you need cluster, replication, security, etc. etc. etc.... then go for the hard one (in terms of robustness) JSF - Sessionbean - JPA.
You should keep this in mind when you answer the
SCEA certification
test.