You're going against the most fundamental of
"best practices" by deciding on your technology stack up front with no consideration about the business function of your application.
What I mean by this is how do you know if you need any of that stuff at all? JPA, Session Beans, JSF? What business or technical requirement is driving your decision to use these?
I recommend for starters that you
StopCoding (<-- click). Get yourself a paper pad and a pencil and figure out what your application is supposed to do, and how you might go about doing it
without writing a line of code. Only once you've done this do you understand the problem well enough to start coding.
Your solution should be
the simplest thing that works. Don't reach for the tech tool
big guns unless they solve a specific problem or make a difficult task easier. Often you just end up introducing enormous complexity to you application for no benefit at all.