Solved

How to access local file system resource from a Servlet container

Posted on 2011-03-03
9
983 Views
Last Modified: 2012-05-11
Hi experts,
  I have a local properties file that I want to read within a class to be deployed in a Servlet container, do you know of any standard way of doing this?
  Thanks!

Cheers,
Michael
0
Comment
Question by:michaelzhou23
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +2
9 Comments
 
LVL 47

Expert Comment

by:for_yan
ID: 35033859
If you mean the file is local on the server - I don't think reading properties file from a servlet
would be any different than reading any file or say any property file from any other Java
program. This is say one exmple of reading properties file:

http://www.zparacha.com/how-to-read-properties-file-in-java/
0
 
LVL 92

Expert Comment

by:objects
ID: 35033860
if its inside the classes (or lib) then you can use the class loader
http://helpdesk.objects.com.au/java/how-to-get-url-to-a-resource-in-same-directory-as-a-class
0
 

Author Comment

by:michaelzhou23
ID: 35033897
Thanks for the quick response.
Sorry for the confusion, I will just make the point clearer. I'm creating a JAR file that contains a class to read a local file. The file is on the same machine(file system) with the Web app server. The JAR is to be used within a Web app. Specifically, what protocol's (file:/// ?) should I use to access the file in the file system rather than in a Web environment (Servlet container)?
0
MS Dynamics Made Instantly Simpler

Make Your Microsoft Dynamics Investment Count  & Drastically Decrease Training Time by Providing Intuitive Step-By-Step WalkThru Tutorials.

 
LVL 47

Expert Comment

by:for_yan
ID: 35033919
I would probably not tell you what is the recommended way, if ther is one, but from experience I know
that you don't need to use any protocol - you can read files form the file system on your web server
as you read any files in Java using all possible methods of reading files. Servlet is the java program like any other java program
and can deal with fileseither  within  the web server root document tree or outside this tree quite freely.
It is if you want to package your property file with your web application to be deployed on any server later
than the way objects suggested with class loader becomes essential.
0
 
LVL 92

Expert Comment

by:objects
ID: 35033979
> Specifically, what protocol's (file:/// ?) should I use to access the file in the file system rather than in a Web environment (Servlet container)?

yes, the file protocol.
0
 

Author Comment

by:michaelzhou23
ID: 35034275
Thanks guys for the suggestion! The "file:/" protocol seems to work!
Now, to make my coding more elegant, I want to embed the text file into my JAR file so it is portable along with the JAR. How do I pack it into a JAR and access it from the class in the same JAR?
Thanks!
0
 
LVL 47

Expert Comment

by:for_yan
ID: 35034326

This is what you can see in the link, which objects posted above.

This one is a little bit more elaborated version of the same:
http://snippets.dzone.com/posts/show/813
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 35034761
You need to put the jar in WEB-INF/lib for that to work
0
 
LVL 5

Accepted Solution

by:
Plk_In_EE earned 125 total points
ID: 35056047
Hi there
You can use zip all classes into jar using export as jar in eclipse Or jar utility in java . make sure you place properties file.,tld files resources path rightly
thank you
0

Featured Post

Is Your DevOps Pipeline Leaking?

Is your CI/CD pipeline a hodge-podge of randomly connected tools? You’ve likely got a tool to fix one problem & then a different tool to fix another, resulting in a cluster of tools with overlapping functionality. Learn how to optimize your pipeline with Gartner's recommendations

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction Java can be integrated with native programs using an interface called JNI(Java Native Interface). Native programs are programs which can directly run on the processor. JNI is simply a naming and calling convention so that the JVM (Java…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn about the different types of variables in Java and how to declare them. Decide the type of variable desired: Put the keyword corresponding to the type of variable in front of the variable name: Use the equal sign to assign a v…
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Suggested Courses

734 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