Re: solved-Re: config.getInitParameter() still returning null

2001-03-08 Thread Milt Epstein

On Fri, 9 Mar 2001, Markus Keller [OrcaSoft] wrote:

> Hello Milt
> 
> > > The value of init parameter var1 is:
> > > <%=
> > > getServletConfig().getInitParameter("var1")
> > > %>
> > > 
> 
> I use this:
> 
> <%= getServletContext().getInitParameter("ApplicationName") %>
> 
> instead of getServletConfig() and it works.

Well, they're not really interchangable, they're meant for different
purposes.  Basically, according to the 2.2 spec, there are context
parameters, and servlet parameters.  A context is basically a web
application, so context parameters are intended to be use for
application-wide parameters.  Servlet parameters are only for a
specific servlet (i.e. a subset of the application).

Sure, you can avoid using servlet parameters, and only use context
parameters, but whether that's the most appropriate and/or cleanest
way to do things depends on what you're doing.

Milt Epstein
Research Programmer
Software/Systems Development Group
Computing and Communications Services Office (CCSO)
University of Illinois at Urbana-Champaign (UIUC)
[EMAIL PROTECTED]


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




Re: solved-Re: config.getInitParameter() still returning null

2001-03-08 Thread Markus Keller [OrcaSoft]

Hello Milt

> > The value of init parameter var1 is:
> > <%=
> > getServletConfig().getInitParameter("var1")
> > %>
> > 

I use this:

<%= getServletContext().getInitParameter("ApplicationName") %>

instead of getServletConfig() and it works.

Markus


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




Re: solved-Re: config.getInitParameter() still returning null

2001-03-08 Thread Milt Epstein

On Thu, 8 Mar 2001, Milt Epstein wrote:

[ ... ]
> 
> 
> Testy
> 
> 
> <%@ page
> import="java.util.*"
> %>
> <%!
> Enumeration names;
> String name;
> %>
> 
> The value of init parameter var1 is:
> <%=
> getServletConfig().getInitParameter("var1")
> %>
> 
> 
> The init parameters are:
> 
> <%
> names = getServletConfig().getInitParameterNames();
> while (names.hasMoreElements()) {
>name = (String) names.nextElement();
> %>
> 
> <%=
>name
> %>
> =
> <%=
>getServletConfig().getInitParameter(name)
> %>
> <%
> }
> %>
> 
> 
> 
> 

BTW, it still works if I substitute "config" for "getServletConfig()"
everywhere above.

Milt Epstein
Research Programmer
Software/Systems Development Group
Computing and Communications Services Office (CCSO)
University of Illinois at Urbana-Champaign (UIUC)
[EMAIL PROTECTED]


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




Re: solved-Re: config.getInitParameter() still returning null

2001-03-08 Thread Milt Epstein

On Thu, 8 Mar 2001 [EMAIL PROTECTED] wrote:

> OK this is how to get init-params working for JSP
> 
> Include this in your web.xml file
> 
> 
> 
> 
>foo
> 
> 
>bar
> 
> 
> 
> 
> And then in your JSP page:
> 
> String s = application.getInitParameter("foo");
[ ... ]

I'm sorry, but I must object :-).  This isn't how to get init-param's
working with JSP, so it's not a solution -- and I wouldn't even call
it a workaround, because you don't need to do a workaround.  What I
said in a previous note should work.  I constructed an example to
demonstrate it.

Here's the relevant stuff from the web.xml file (which is located in
/webapps/blah/WEB-INF/):

  
testy
testy.jsp

  var1
  value1


  var2
  value2

  

  
testy
/testy.jsp
  

I've appended the JSP after my sig.

I used a URL of the form:

http://my.domain.com/blah/testy.jsp

The only thing I had trouble with was where the test.jsp file should
go.  I tried it in /webapps/blah/WEB-INF/classes/, and
it didn't work.  I put it in /webapps/blah/, and it
did work.  I'm not sure I fully understand why that is, but at least I
did get the init-param's working.

Milt Epstein
Research Programmer
Software/Systems Development Group
Computing and Communications Services Office (CCSO)
University of Illinois at Urbana-Champaign (UIUC)
[EMAIL PROTECTED]





Testy


<%@ page
import="java.util.*"
%>
<%!
Enumeration names;
String name;
%>

The value of init parameter var1 is:
<%=
getServletConfig().getInitParameter("var1")
%>


The init parameters are:

<%
names = getServletConfig().getInitParameterNames();
while (names.hasMoreElements()) {
   name = (String) names.nextElement();
%>

<%=
   name
%>
=
<%=
   getServletConfig().getInitParameter(name)
%>
<%
}
%>






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




solved-Re: config.getInitParameter() still returning null

2001-03-08 Thread Michael . Murphy

OK this is how to get init-params working for JSP

Include this in your web.xml file



        
           foo
        
        
           bar
        



And then in your JSP page:

String s = application.getInitParameter("foo");








Milt Epstein <[EMAIL PROTECTED]>
03/08/01 08:00 AM
Please respond to tomcat-user

        
        To:        [EMAIL PROTECTED]
        cc:        
        Subject:        Re: config.getInitParameter() still returning null


On Thu, 8 Mar 2001, Bo Xu wrote:

> [EMAIL PROTECTED] wrote:
> 
> > The config.getInitParameter() called from within a JSP page is
> > returning null. After changing the web.xml file numerous times and
> > trying all the suggestions from java.sun.com and the tomcat archives I
> > still cannot resolve this problem.
> > Does anyone know why we can't access the init parameters?
> > thanks in advance
> >
> > Here is what my web.xml file looks like (does not work):
> >
> > 
> >     
> >         
> >            Error
> >         
> >         
> >             org.apache.jasper.runtime.JspServlet
> >         
> >         
> >             debug
> >             true
> >         
> >     
> > 
> >
> > and my JSP code:
> > <%
> > String s = config.getInitParameter("debug");
> > if (s == null) {
> > out.println("Init param must be null!");
> > }
> > else{
> > out.println("Init param is "+s);
> > }
> > %>
> 
> Hi :-)  I didn't ever use jsp to get init parameters, but I guess
> the reasons is: in your WEB_INF/web.xml, you only define
> a servlet definition with some init parameters, but you didn't
> define a servlet-mapping; and/so I guess you invoked your
> servlet without url-pattern(servlet-mapping name) -> I guess
> you use: http://localhost:8080/myapp/servlet/Myservlet ,
> so if you use Servlet, the following will return null:
>  - config.getInitParameter(...)
> -  this.getInitParameter(...)
[ ... ]

I could be wrong, but I don't believe you have to define
servlet-mapping's to get init-param's to work, just having defined the
servlet is sufficient.  However, in the URL, you do need to use the
specific servlet-name you used in the servlet definition.  (That's
because you can define the same servlet class multiple times, with
different servlet-name's and different init-param's.)

So, according to the above web.xml, the URL that should be used is:

http://your.domain.com/yourwebappname/servlet/Error

(No, I haven't tested this.)

However, I just noticed that the original poster said that this is all
happening in a JSP ("JSP page" is redundant :-) -- that throws a
monkey wrench into the situation, and I'm not sure how it changes
things.  For example, I don't know how to set up init-param's in a
JSP.  Also, upon re-reading the above servlet definition, I'm not sure
that's the right way to set up a JSP -- i.e. putting
org.apache.jasper.runtime.JspServlet as the servlet-class (I assume
that's the tomcat/jasper servlet that handles JSP's).  I think you
want to name your JSP .jsp, and just tell tomcat somewhere
that it's a JSP.  But again, I'm not sure how you'd set up
init-param's for it (maybe you do have to fallback on the suggestion
to use context init-param's, instead of servlet init-param's).

Well, I think I may have just raised more confusion, but perhaps this
will lead to some helpful discussion/ideas, and/or someone will post
clearing things up.

...

Hold on.  I decided to do a google newsgroup search on this, to see if
I can get more definite information, and looks like I found the
answers.  Check out the following posts:

http://groups.google.com/groups?q=init-param+jsp&hl=en&lr=&safe=off&rnum=1&seld=964886773&ic=1
http://groups.google.com/groups?hl=en&lr=&safe=off&th=9eb4e0cd3b0f1fb6&rnum=9&seld=958627636&ic=1

Actually, I don't know if these URLs will work outside the context of
my search -- if not, go to the google advanced newsgroups search page
at:

http://groups.google.com/advanced_group_search

and enter "init-param jsp" in the "with all of the words" box (without
the quotes) and "hanna" in the "Author" box (again, without the
quotes).

Basically, it looks like a servlet definition can specify *either*
servlet-class or a jsp-file (those are the actual names of the tags
used in web.xml).  Note the warnings about what form of URL to use
when you set things up this way, though.

Milt Epstein
Research Programmer
Software/Systems Development Group
Computing and Communications Services Office (CCSO)
University of Illinois at Urbana-Champaign (UIUC)
[EMAIL PROTECTED]


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