I think there are several paths you can follow, talk development and application building is very broad, some examples would be action-based and component-based applications, but both of these there are certain patterns that you can follow, Java is very broad you mode even make a miscellany of technologies that would work (could have serious problems but in a basic app you would render), however rendering is not everything, when you start to develop your application it will and you start to see the problems you have to solve, be it performance, layout, integrations etc ... when you write many scriptlets on the JSP page itself you are taking a responsibility that should be on the Java server for your JSP which is where it should be only its HTML code, the fact is that due to this permissive extent that Java has ends up causing developers to do everything that is m. in a software.
Scriptlets should not be in the JSP pages because it is not the responsibility of the designer to know Java even from the page developers, but these days and now talking about JSF that are componet based applications you no longer depend so much on the designer as well JSF will probably choose one of these beans from the market like Primefaces, richfaces, IceFaces, etc ... it is still possible to merge JSTL and other libraries, but remembering that you have facelets.
But, following the standards is good because it means that many have already had the same problems that you will face if you do not follow them, resulting in a poor model, believe me, it is quite easy for a project to fail and a wrong decision in it is enough to being doomed to failure, so study, improve and make good use of the patterns, but not for the fashions of the time, but because really that pattern solves a problem in a very elegant way and that above all it has the design principles. / p>