Win a copy of Rust Web Development this week in the Other Languages forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Tim Cooke
  • Campbell Ritchie
  • Ron McLeod
  • Liutauras Vilda
  • Jeanne Boyarsky
Sheriffs:
  • Junilu Lacar
  • Rob Spoor
  • Paul Clapham
Saloon Keepers:
  • Tim Holloway
  • Tim Moores
  • Jesse Silverman
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • Al Hobbs
  • Piet Souris
  • Frits Walraven

Web.xml

 
Ranch Hand
Posts: 285
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I want to use another file in addition to web.xml. SO that other developers can add there modules and drop an xml file instead of messing with the original one. How DO I achieve this?
 
Ranch Hand
Posts: 52
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
The method ServletContext.getResourceAsStream() allows you to load a resource (a file in your case) as a Stream. I suggest placing the file, regardless of format, in the WEB-INF directory right along side of the web.xml file.
If the file's name is additional.xml, you would have a line of code that reads
In the above, sc is the current ServletContext.
The file can be of anytype (.txt, .properties, .xml), you just have to use the InputStream to read it's contents.
 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello Ken:
You only can to accede to ServletConfig object from within a servlet (I suppose).
My question is: How can you write to a text file from one class that no implements HttpServlet?.
I have a class named "EventWriter" with a method named "addEvent". This class no implements HttpServlet.
I want to maintain updated a file named "event.log" (I would like to put it in /Web-inf path). How can i do it?
This is my class:

Thanks.
 
Ken Robinson
Ranch Hand
Posts: 52
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
First, I would suggest NOT putting a file generated by your app in the WEB-INF directory. This directory's purpose is to allow the web app/container access to files needed for configuration while keeping them off limits for incoming web request. Keep in mind, if you deploy a .war file and the container does not unpack the .war, you may get an error when writing to that directory. Remember, the method name is getResourceAsStream. There is not createResourceAsStream type method. I'd suggest setting a Context Parameter as the file location and creating is somewhere on the disk not within the public HTML directory of the server you are using.
A ServletContext object is just an object. Any class you write can take a reference to it in it's constructor or method calls. Simply pass it in as a init parameter to your object or as an arguement in a method call.
reply
    Bookmark Topic Watch Topic
  • New Topic