The "Community" is Always Right?
In Sue Spielman's Practical JSTL article, she writes:
The JSTL includes a number of actions that provide a mechanism for interacting with databases. The previous sentence should, at a very minimum, send up a red flag in your architectural visions. One might ask, "Do I really want to be able to perform SQL actions such as queries, updates, and transactions from my JSP? Isn't that business logic that belongs in the model?" The answer is yes. Yes, yes, yes. To follow a Model-View-Controller (MVC) architecture, which is the predominant design pattern used in building web applications today, you definitely want to keep your model information in your business logic. This means that you don't want it in your JSPs. Why then are these actions even provided in the JSTL? Good question and one that I've discussed with various members of the JSR-53 expert group. The reason is the "C" or community in the Java Community Process (JCP). The community has asked for it, the community has gotten it.
I don't know about you but I just had the most horrifying flashback to the C++ Standardization process!
One of the tasks that I'm regularly brought in for is to help companies fix their systems which have gotten out of control. One of the fundamental problems that I find is the type of mushed together "solutions" that is so clearly exemplified by this JSTL silliness.