JSP might be considered Sun's answer to the many problems with servlets. Some of the problems included having to output HTML from the code (difficult to separate presentation from logic).
So Sun came up with the J2EE and JSP architecture to allow a markup based, script-like approach to compete with the ease of use of a Cold Fusion, ASP, etc.
This article (from a Java site) http://www.servlets.com/soapbox/problems-jsp.html outlines some of the development issues with JSPs.
The problem I have with JSPs is more fundamental. I have yet to find a JSP site that PERFORMS well (if you find one, pls emal me). When I go to a JSP site like vault.com or fortune.com, I run into UNBELIEVABLE delays (I think Fortune might be an ATG Dynamo site and not a true JSP, but it's close).
All that said - J2EE is still considered a strategic enterprise architecture for many companies. BEA WebLogic, ATG Dynamo, JRun and other web app servers of varying (but mostly high) cost drive J2EE architectures for large companies. I think there's significant disillusionment however in J2EE. Developer talent is very expensive. Development cycles are very slow due to complexity of EJB/JSP integration. And worst of all in my book, performance just flat out sucks.
I actually have seens used and prefer to use PHP and the top-tier in an n-tier architecture with servlets or ISAPI in the middle tier encapsulating business rules and some kind of backend (Oracle/MYSQL/etc) at the low tier.
Sorry for the rant!
Dave
===========================================
http://badblue.com/helpphp.htm
Free small footprint web server for Windows
File-sharing, PHP, Office transcoding, etc.