> From: James Dekker [mailto:[EMAIL PROTECTED] > Subject: Helping setting appropriate prefix when using > ServletContext.getResourceAsStream()
Where to begin... > // String prefix = getServletContext().getRealPath("/"); You apparently already figured out the above was a bad idea, as is any direct I/O request from inside a webapp. When your webapp is deployed as a .war, it has no access to the structure inside the .war file other than via the classloader (which includes the getResourceAsStream() API). Consequently, much of the rest of your code in the servlet is inappropriate. As far as where to place log4j.properties, the Tomcat doc states: "You would place a similar log4j.properties file in your web application's WEB-INF/classes folder, and log4j1.2.8.jar into WEB-INF/lib. Then specify your package level logging." See: http://tomcat.apache.org/tomcat-5.5-doc/logging.html for more info. > <servlet-mapping> > <servlet-name>MySampleAppServlet</servlet-name> > <url-pattern>/app</url-pattern> > </servlet-mapping> Note that the above will allow only the URI http[s]://host[:port]/myapp/app to reach your servlet. If you want all requests for the myapp context to be processed by your servlet, change the url-pattern to just "/" (without the quotes). > <param-value>WEB-INF\log4j.properties</param-value> <snip> > <param-value>WEB-INF\attributes-config.xml</param-value> Use forward slashes in the config files, even on Windows. > Dec 21, 2006 4:53:16 PM > org.apache.catalina.loader.WebappClassLoader.validateJarFile > INFO: > validateJarFile(C:\DevTools\tomcat\jakarta-tomcat-5.5.9\webapps\ > affiliates\WEB-INF\lib\servlet-api.jar) > - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending > class: javax/servlet/Servlet.class Don't put servlet-api.jar into any of your webapps, since Tomcat already supplies it in common/lib. No class should ever appear in more than one place in any given branch of the classloader tree: Bootstrap | System | Common / \ Catalina Shared / \ Webapp1 Webapp2 ... - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]