I am supposed to design 'the server side'
of JSP/Servlet application, responsible
for bussiness logic and data manipulation.
The application will serve only about 100 clients,
allowing data (dynamic content) manipulation,
and will also contain some portal funcionality(authentication, personalization).
From requirements survey it is visible that advanced
features like transactions, messaging, naming are not
required. Also, the application will not have to scale well
- the number of clients is quite static and is not
going to change.
My question is (supposely controversial) is it worth to
use EJB (session/entity/message) technology in this case
or is it better to create lightweight solution based only
on Java Beans - simpler to build and free of overhead
undoubtly introduced when using EJB.
If you do not need transactional behaviour and other EJB-specific solutions, when the scalability is not a factor to consider, of course, 2-layer model will be the best choice. No need in EJBs if you're sure that your application will never be scaled. My advice, use 2-layer model - you'll save some money and probably time.
I'll second to that. Unless you need transactions and a very strong degree of scalability, I wouldn't even consider EJB. Even if you do need to scale, unless you're dealing with many complex subsystems, EJB is still an overkill IMO.
No.I dont think it wud be worth the overhead.
what worries me is ur last statement on using java beans instead to do logic processing.
What I suggest is that have the logic in the servlet/helper classes.Keep java beans for a neat jsp only.