You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by aps olute <ap...@yahoo.com> on 2002/12/19 18:20:18 UTC

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:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: How to start a standalone app from a servlet and problems with reading properties file

Posted by Dodd Gatsos <dg...@slb.com>.
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" <ap...@yahoo.com>
To: <to...@jakarta.apache.org>
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:
<ma...@jakarta.apache.org>
> For additional commands, e-mail:
<ma...@jakarta.apache.org>
>


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: How to start a standalone app from a servlet and problems with reading properties file

Posted by aps olute <ap...@yahoo.com>.

    Can you kindly read the entire posting before responding? I did mention I
attmpted to use geResourceAsStream() with partial sucess didnt I?  There are
several questions posted, so please read the entirety and put your responses
according to the numbered question.  The next reader of the post would most
likely ignore the entire post because you Andreas Probst seem to answer the
entire post without regard to the whole picture. There were 3 question posted.
Your partial answer may have answered one, and did not answer the rest.


--- Andreas Probst <an...@gmx.net> wrote:
> Hi,
> 
> this question has been answered many times. Look for "properties 
> files" in the archive.
> 
> Hint: Use servletContext.getResourceAsStream();
> 
> 
> On 19 Dec 2002 at 9:20, aps olute wrote:
> 
> > 
> > 
> >  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?
> > 
> 
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>
> 


__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: How to start a standalone app from a servlet and problems with reading properties file

Posted by Andreas Probst <an...@gmx.net>.
Hi,

this question has been answered many times. Look for "properties 
files" in the archive.

Hint: Use servletContext.getResourceAsStream();


On 19 Dec 2002 at 9:20, aps olute wrote:

> 
> 
>  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?
> 


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: How to start a standalone app from a servlet and problems with reading properties file

Posted by aps olute <ap...@yahoo.com>.
 Tim,
    Thanks for responding. Partial success was I was able to read the
properties file using code snippet below in the servlet init() method:

  Properties p = new Properties();
  InputStream is = getClass().getResourceAsStream(configFileName);
//configFileName is test.properties
  p.load(is)

This property file is loaded and parsed for a property needed by a support
class. The parameter read is passed to the support class. When doing exact same
InputStream is = getClass().getResourceAsStream(parmPassedFromservlet); in the
support class, Tomcat does not start. I posted this earlier last week on:
http://marc.theaimsgroup.com/?l=tomcat-user&m=103982860916736&w=2

Basically, I am facing two issues, 1) dependent on where I start Tomcat from
and  2) Using getResourceAsStream() fails in the support class.
Any tips would be appreciated. Thanks.

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>