Solved

Load xml file

Posted on 2006-06-12
5
209 Views
Last Modified: 2010-04-01
Hi,

I have a jsp file called behind the scenes by a client html file.

The jsp page has to load an xml file which is in the same directory as the jsp page.

The only way i can get it to load is when i put the full windows path.

I use

 File thefile = new File("Thexml.xml"); //does not work

 File thefile = new File(http://correctpathtofilewhichworksinbrowser); //does not work.

File thefile = new File("../directoryabove/xmlfile.xml"); //does not work.


The only way that works is

File thefile = new File( "c:\\pathtofile");

Thanks.
0
Comment
Question by:wilflife
  • 2
  • 2
5 Comments
 
LVL 35

Assisted Solution

by:TimYates
TimYates earned 250 total points
ID: 16883736
File theFile = new File( getServletContext().getRealPath( "/xmlfile.xml" ) ) ;

Tim
0
 
LVL 8

Accepted Solution

by:
colr__ earned 250 total points
ID: 16883750
TimYates post should work, but one thing to consider - the reason you are having to put the full path in is because the relative URL is from the web server executable. For example, even though your site may be in the folder 'mySites', as far as java is concerned, your running the program from the application servers root directory, and so this location is your relative path.

Doesnt help you, but this is why your getting this result.

colr__
0
 

Author Comment

by:wilflife
ID: 16883987
I had to use colr technique, so made sure i could map to the correct directory once i knew where i was.
I couldn't get the

new File( getServletContext().getRealPath( "/xmlfile.xml" ) ) ;

to work even when importing javax.* at the start of my jsp.

Thanks.
0
 
LVL 35

Expert Comment

by:TimYates
ID: 16883994
>> I couldn't get the <snip> to work even when importing javax.* at the start of my jsp.

You shouldn't have needed to import anything...

especially not javax.* which doesn't import any classes (there is nothing inside javax.*)

Tim
0
 
LVL 8

Expert Comment

by:colr__
ID: 16883996
The only problem with that method is that it isnt portable. In most cases this wont be a problem, but good to know.

colr__
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

Never store passwords in plain text or just their hash: it seems a no-brainier, but there are still plenty of people doing that. I present the why and how on this subject, offering my own real life solution that you can implement right away, bringin…
What is Backup? Backup software creates one or more copies of the data on your digital devices in case your original data is lost or damaged. Different backup solutions protect different kinds of data and different combinations of devices. For e…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now