I had the same feeling that servlet spec. should be more specific when
I just started working with J2EE:)

But, my experience tells me that a specification tells you "What" you
need to have in a servlet container and not "How" to implement a
servlet container.

If I want to learn servlet programming, I usually pick up Jason Hunter's book.

Lee

On Wed, 24 Nov 2004 14:57:14 -0500, Erik Weber <[EMAIL PROTECTED]> wrote:
> Good point. I guess the J2EE tutorial would be the place for stuff like
> that (I was trying to only speak of "official" documentation).
> 
> Erik
> 
> 
> 
> 
> Craig McClanahan wrote:
> 
> >It's important to remember that the Servlet Specification target
> >audience isn't application developers -- it's people that are
> >implementing servlet containers (such as the group that creates
> >Tomcat).  It is about defining requirements, not illustrating use
> >cases.
> >
> >For application level questions, and especially for beginners, you'll
> >find any of the plethora of books, magazine articles, tutorials, and
> >mailing lists that are available to be somewhat more accessible.
> >(Personally, I still agree with your PS about the spec being "required
> >reading" -- just need to set your expectations correctly :-).
> >
> >As for your specific question about accessing a context init
> >parameter, you do have it right.
> >
> >Craig
> >
> >
> >On Wed, 24 Nov 2004 14:26:23 -0500, Erik Weber <[EMAIL PROTECTED]> wrote:
> >
> >
> >>Well, I have to criticize my own advice. I just read over the Servlet
> >>2.4 spec. It doesn't explain this well at all, in my opinion. It still
> >>uses the same old, nearly meaningless, obscure language like "used by
> >>the Servlet container to communicate with a Servlet", and stuff like
> >>that, which doesn't help anyone who actually wants to write a program.
> >>It does mention the getInitParameter methods of ServletContext and
> >>ServletConfig, but nowhere that I could find does it simply say, use one
> >>with this element in web.xml and the other with that element in web.xml,
> >>and/or why you would choose one or the other.
> >>
> >>Why can't the spec just say what I wrote below instead of trying to be
> >>so "conceptual"? Is what I wrote wrong? This is the stuff that .NET
> >>people criticize and that frustrates new programmers (in my experience).
> >>
> >>Here is a partial outline of how it should be explained:
> >>
> >>Initializing a Servlet
> >>-------------------------
> >>
> >>I. Initialization parameter that is global to your Web application (all
> >>Servlets)
> >>
> >>A. web.xml
> >>
> >><web-app>
> >>    . . .
> >>    <context-param>
> >>        <param-name>globalDateFormatString</param-name>
> >>        <param-value>yyyy-MM-dd</param-value>
> >>    </context-param>
> >>    . . .
> >></web-app>
> >>
> >>B. Java
> >>
> >>// store the date format String, but not a DateFormat,
> >>// as an instance variable or class variable
> >>// (DateFormat can't always be used concurrently)
> >>protected String globalDateFormatString;
> >>. . .
> >>public void init() throws ServletException, UnavailableException {
> >>    globalDateFormatString =
> >>getServletContext().getInitParameter("globalDateFormatString");
> >>    // try to instantiate a SimpleDateFormat with the String;
> >>    // if the String is invalid, throw an Exception to make the Servlet
> >>unavailable
> >>}
> >>
> >>II. Initialization parameter that is specific to one Servlet
> >>
> >>A. web.xml
> >>
> >><servlet>
> >>    . . .
> >>    <init-param>
> >>        <param-name>specificDateFormatString</param-name>
> >>        <param-value>|EEE, d MMM yyyy HH:mm:ss Z|</param-value>
> >>    </init-param>
> >>    . . .
> >></servlet>
> >>
> >>B. Java
> >>
> >>protected String specificDateFormatString;
> >>. . .
> >>public void init() throws ServletException, UnavailableException {
> >>    globalDateFormatString =
> >>getServletConfig().getInitParameter("specificDateFormatString");
> >>}
> >>
> >>Please correct me if I have it wrong, or show me the light if I missed
> >>something in the spec. I know I learned this somewhere, but can't
> >>remember where (the tutorial maybe?).
> >>
> >>Shouldn't this be the way the spec reads, or does this type of example
> >>belong somewhere else?
> >>
> >>Erik
> >>
> >>P.S. The spec is still required reading. ;-)
> >>
> >>
> >>
> >>
> >>Bill Siggelkow wrote:
> >>
> >>
> >>
> >>>Thanks for the clarification, Erik.
> >>>
> >>>Erik Weber wrote:
> >>>
> >>>
> >>>
> >>>>I think you want ServletContext.getInitParameter here. That is used
> >>>>with the "context-param" element (global to your web app).
> >>>>ServletConfig.getInitParameter is used with the "init-param" element
> >>>>(specific to one Servlet).
> >>>>
> >>>>In addition to the JavaDocs, you should read the Servlet
> >>>>specification, which tells you how Servlets and Servlet containers
> >>>>are supposed to work. Trust me, it is required reading:
> >>>>
> >>>>http://www.jcp.org/aboutJava/communityprocess/final/jsr154/
> >>>>
> >>>>Erik
> >>>>
> >>>>
> >>>>
> >>>>
> >>>>Bill Siggelkow wrote:
> >>>>
> >>>>
> >>>>
> >>>>>MyServlet extends HttpServlet {
> >>>>>public void init (ServletConfig config) {
> >>>>>String paramValue = config.getInitParameter("myContextParamName");
> >>>>>}
> >>>>>}
> >>>>>
> >>>>>Personally, I have found the JavaDocs invaluable for this kind of
> >>>>>stuff; you can find the Servlet 2.4 Javadocs online at
> >>>>>http://jakarta.apache.org/tomcat/tomcat-5.0-doc/servletapi/index.html.
> >>>>>
> >>>>>-Bill Siggelkow
> >>>>>
> >>>>>Nishant wrote:
> >>>>>
> >>>>>
> >>>>>
> >>>>>>hi
> >>>>>>can anyone tell me how can i get context-param parameter in my
> >>>>>>servlet .
> >>>>>>thanks in advance
> >>>>>>Regards
> >>>>>>Nishant Patil
> >>>>>>Software Engineer
> >>>>>>Cybage Softwares Pvt. Ltd. (A CMM Level 3 Company)
> >>>>>>West Avenue, Kalyaninagar
> >>>>>>Pune - 411006
> >>>>>>Ph. +91-20-4044700/4041700 Extn 355
> >>>>>>[EMAIL PROTECTED]
> >>>>>>www.cybage.com
> >>>>>>"There is difference between knowing the Path and walking on the Path"
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>---------------------------------------------------------------------
> >>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>>>>For additional commands, e-mail: [EMAIL PROTECTED]
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>---------------------------------------------------------------------
> >>>To unsubscribe, e-mail: [EMAIL PROTECTED]
> >>>For additional commands, e-mail: [EMAIL PROTECTED]
> >>>
> >>>
> >>>
> >>>
> >>
> >>
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to