Dear Mr. Hall, I have both of your previous books: 1) "Core Servlets & JSP, 1st Edition" 2) "More Servlets & JSP" Is your new book, "Core Servlets & JSP, 2nd Edition" a good reference in pertaining to Sun Microsystems' Sun Certified Web Component Developer (SCWCD) exam? Secondly, I have heard that there are lots of problems with JSP, please take a look at: http://www.servlets.com/soapbox/problems-jsp.html What is your opinion regarding this article? Also, do you recommend using Tea, WebMacro? Does your new book cover JavaServer Faces (JSF)? What is your opinion with JSF? Sorry for the 20 questions! Kindest regards,
I have both of your previous books: 1) "Core Servlets & JSP, 1st Edition" 2) "More Servlets & JSP" Is your new book, "Core Servlets & JSP, 2nd Edition" a good reference in pertaining to Sun Microsystems' Sun Certified Web Component Developer (SCWCD) exam?
That article is almost four years old! A lot has changed since then, not least of which has been the advent of Taglibs. Even given the age, that article cracks me up. The author makes a big deal about how this code
is much, much nicer than the contemporary JSP equivalent
First of all, you have to remember that this article was written a long time ago, and many of the points are with respect to approaches that have long been superseded. However, although it is quite true that there are a number of deficiencies in JSP (just as there are in the competing technologies), I disagree strongly with this article as it stands now. Partly, I disagree with some of the technical analysis in the article (even judged by the spec at the time the article was written), but there are three more important reasons why I disagree with it:
The article implies that the decision to use JSP vs. WebMacro or Velocity or Tea or whatever should be based solely on the technical merits of those packages. I disagree. I think integration with the Web application framework, open standards, portability, multi-vendor support, tool vendor support, and just plain "mainstreamness" are also important considerations.
The author thinks that ability to call Java code from JSP is a deficiency. Although I agree that such calls should be kept to a minimum (and often eliminated altogether), I think it is sometimes useful. I disagree with the general "take small knives away from children" approach to language design whereby everything that might be dangerous is left out even though you lose power by doing so.
Developments in the JSP world over the last several years have addressed many of the concerns. For example, the JSP 2.0 expression language is much better (IMHO) than the WebMacro expression language examples shown in the article, and JSTL addresses the valid concern that JSP used to lack good looping constructs.
Also, do you recommend using Tea, WebMacro?
No, no, no, no, no! Not that I have strong opinions on this matter. I very much feel that servlets and JSP are two parts of one unified technology, and should be learned and used together.
Does your new book cover JavaServer Faces (JSF)? What is your opinion with JSF?
Yes, JSF will be covered in the upcoming second volume of the book. My opinion of JSF is still evolving, since the specification is still evolving. However, although I think JSF could make a big splash, my two concerns are these:
By trying to make the GUI elements usable for generating multiple types of interfaces, will they make them less usable for what almost everyone will use them for (HTML forms) in order to support what hardly anyone cares about (applets)?
Will they stay focused on GUI elements, or will they stray into a more general MVC framework? If they stray, you have to wonder why people wouldn't just stick with Struts, since it is already widely used and known.
As I said, the specs area still evolving, and these concerns can be (and are) being addressed. How well is yet to be seen. Cheers- - Marty
Joined: Nov 12, 2001
Marty, Thanks for such an insightful response! I met Craig McClanahan at JavaOne, last year, in person. We talked briefly about JSF, and from the best of my knowledge, what he told me it was is a rendering technology for web based GUI, and it is completely implemented using the JSF tag libs (Disclaimer: Hey that was last June, so sorry if I am wrong about this) So, based on what he told me, from my understanding, JSF isn't really applets... BTW, Craig McClanahan is also the creator of the Struts Framework. Here is a URL which interviews McClanahan about Struts & JSF: http://www.theserverside.com/events/videos/CraigMcClanahan/dsl/interview.html Thanks for the response and also thanks for defending JSP. I really like JSP, I was speaking to senior software engineer friend of mine who specialized in ASP, and he told me that ASP doesn't even have custom tags! I was so surprised at this lack of functionality... Until next time,
"Take small knives away from children" and give them what instead, some remote control which they don't understand and might be more dangerous? I'm afraid I just don't understand this puritanical desire to remove all Java from JSP pages. I'll also admit that I'm pretty much of a novice at this, certainly I don't have years of experience. But I do have to wonder if someone hasn't gone overboard in continuing to develop one new language after another (taglibs, now EL) in order to get Java out of JSP. I'm not writing this as flamebait but would like to see some thoughtful replies on why experienced developers think that EL will be helpful to them.
Joined: Nov 12, 2001
Ken, Very good response... C'mon guys, please give us your opinions... Especially the guys that are master servlet / JSP programmers, what do you guys think of EL?
Well, even though I (think I) know how to program in Java, I still like the EL. First, it makes my JSP code easier to read. Second, it saves me time. Surely
is easier (even for me, a Java developer) than
And, as was already said, the EL can make the JSP pages much more accessible to non-Java-programmers. Now, this example presumes that I am already using MVC; defending the MVC approach is a separate discussion, and IMHO the EL offers very little if you are not using MVC. Cheers- - Marty
As a Java developer I am not too much excited about it but it does achieve the goal of role separation which was missing was in previous versions.
I agree with Pradeep... For a certain period of time, I will be using traditional JSP, rather than EL... But, in no time, I will of course adapt to the newly-created technology like this... That's my opinion on EL, a great evolution of JSP technology...
Marty, I do have to agree that the EL code you posted does look mighty simple, in a good sense I mean. I may have missed it in your earlier posts so I hope I'm not repeating myself in asking if your new book goes into any detail on it. If it's as simple as it looks and allows cleaner code then the burden of learning it and adding one more layer to JSP creation then I might be able to see it in a better light. Perhaps EL has just had a bad advertising campaign? Thanks for any info, Ken
Joined: Jan 02, 2003
I do have to agree that the EL code you posted does look mighty simple, in a good sense I mean.
It also simplifies access to Collection elements, cookies, request headers, and request parameters. Especially when using MVC (so the JSP page is accessing previously created data, not creating/modifying data), IMHO it makes the JSP code much cleaner and more concise.
I may have missed it in your earlier posts so I hope I'm not repeating myself in asking if your new book goes into any detail on it.
Most definitely. The first volume (out now -- see http://www.coreservlets.com/) has an entire chapter on using it. It is not very complicated. Cheers- - Marty