I could be being naive on this one, but I've always loaded property files
and
other resources by putting them in the
WEB-INF/classes directory of my class path, then doing something like:

InputStream istr=getClass().getResourceAsStream("/myprops.properties");
Properties props=new Properties();
props.load(istr);
istr.close();

You have to make sure that the above snippet of code is in a non-static
context
and inside of a class that is either in a jar file in the WEB-INF/lib
directory or in
the WEB-INF/classes directory.

I've tested the above approach in tomcat 3.2.x and in IBM WebSphere 3.5.4
and it has worked in both.

I hope this has helped.
-Mike

----- Original Message -----
From: "Keith Wannamaker" <[EMAIL PROTECTED]>
To: "Tomcat Developers List" <[EMAIL PROTECTED]>
Sent: Monday, November 26, 2001 2:44 PM
Subject: 3.3 classloading & resources


> I think there may be a problem with resource loading in TC3.3.
> If I add a property file to the app class path by setting
> org.apache.tomcat.apps.classpath, then the call to
> ResourceBundle.getBundle("foo") doesn't find it.  Nor does
> it get located if I place the said property file in tomcat/lib/apps.
> In fact, the only way I have been able to find it is to
> override the classpath in the tomcat script.
>
> The good news is that, by setting org.apache.tomcat.apps.classpath,
> initClassLoaders() does set the AppsLoader class to a ClassLoader
> which contains my properties file.
>
> The bad news is this doesn't seem to be the deafult loader used
> in the call to ResourceBundle.getBundle("foo").
>
> The only thing I can think of trying is
> ResourceBundle.getBundle("foo", Locale.getDefault(),
>                          magic.ContextManager.getAppsLoader());
> but that binds the code to the Tomcat container.
>
> My next step is to rebuild the jdk with debugging info to see which
> loader is actually being used in ResourceBundle.getBundle, but
> I appreciate any insight in the interim.
>
> Keith
>
>
> --
> To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>
>
>


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

Reply via email to