It’s all begin when i need to get a text file content from a servlet filter, after spent some amount of time googling i’ve found a good solution. This is how i do it.
package com.edw.filter;
import java.io.File;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import org.apache.log4j.Logger;
/**
*
* @author edw
*/
public class MyFilter implements Filter {
private FilterConfig filterConfig = null;
private Logger logger = Logger.getLogger(this.getClass());
public MyFilter() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)
throws IOException, ServletException {
try {
String pathName = filterConfig.getServletContext().getRealPath("/");
File file = new File(pathName);
logger.debug(file.getAbsolutePath());
chain.doFilter(request, response);
}
catch(Throwable t) {
logger.error(t,t);
}
}
public void destroy() {
}
public void init(FilterConfig filterConfig) {
this.filterConfig = filterConfig;
}
}
Hope it can help others, thank you (*)