Dude, It's kinda crazy.  I was having the same problem.  Your best bet is to
use an absolute path from the file system, (not from the base %TOMCAT_HOME%
directory or anything like that).  Not only is it difficult to determine
what the default path is from Tomcat, but I've also noticed that if I read a
file from a certain location, let's say "/opt/ito/distrib/filename",
"/opt/ito/distrib" becomes the new default path.
So even if you could figure out what the default was to start with, it can
change.

Using an absolute path seems to be the only way to be sure you find your
file.

This should also fix your problems with #3.  I've read many files and
executed many applications from the doGet() and init() methods.  So if you
are still having problems with this after the absolute pathing issue, let me
know.

Dodd

----- Original Message -----
From: "aps olute" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, December 19, 2002 11:20 AM
Subject: How to start a standalone app from a servlet and problems with
reading properties file


>
>
>  Greetings,
>        I have been trying to do the following using Tomcat 4.1.12:
>
> 1)  Attempt to have a servlet read a properties or any text file.  Reading
the
> file from the doGet() method by:
>
> BufferedReader br = null;
> br = new BufferedReader(new FileReader(file));  //file is
"test.properties"
>
> Result: Varying success, because I dont quite comprehend the Tomcat
"startup"
> directory.  Discovered that there is dependency on from where Tomcat was
> started.
> For example, if started Tomcat by ./bin/starup.sh from tomcat_home/bin/,
> I must have the file the servlet reads located at tomcat_cat/bin/.  If I
> started Tomcat from tomcat_home/webapps/  by  ../bin/startup.sh, I must
have
> the properties file located at tomcat_home/webapps/ or else the servlet
will
> not find this.
>
> 2)  Atempt to have a servlet read a properties or any text file.  Reading
the
> file from the init() method by:
>
> BufferedReader br = null;
> br = new BufferedReader(new FileReader(file));
>
> Result: Starting Tomcat from tomcat_home/bin/ by ./bin/startup.sh, failure
to
> get Tomcat even to start, the log shows it only goes as far as Apache
> Tomcat/4.1.12 and stops.  Starting Tomcat from tomcat_home/webapps/ by
> ../bin/startup.sh Tomcat starts, some other context are running, but the
> servlet reading this properties file on this specific context fails to
find the
> properties file.  Is using File IO bad in the init() method? I want to do
this
> to initialize a standalone application.
>
> I surmized I cant read a properties file from init() method using File
class.
> I did try as one suggested about using getResourceAsStream() with partial
> success.
>
> 3) Can a stand alone application be started at all from a servlet?  I cant
seem
> to get this to work, either from the init() or doGet() method. I can not
launch
> an application why from a servlet, why?
>
> Any help on #3 please?
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> http://mailplus.yahoo.com
>
> --
> 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