Subscribe

RSS Feed (xml)

Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

Tuesday, December 11, 2007

java code for JNDI Filter

import java.io.IOException;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
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 javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

public class JndiFilter implements Filter {

private FilterConfig config;

private Context env;

public JndiFilter() {
}

public void init(FilterConfig filterConfig) throws ServletException {

this.config = filterConfig;

try {

env = (Context) new InitialContext();

} catch (NamingException ne) {

throw new ServletException(ne);

}

}

public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {

javax.mail.Session mailSession = null;

try {

mailSession = (javax.mail.Session) env.lookup("MyEmail");

} catch (NamingException ne) {
}

HttpServletRequest hRequest = null;

if (request instanceof HttpServletRequest) {

hRequest = (HttpServletRequest) request;

HttpSession hSession = hRequest.getSession();

if (hSession != null)
hSession.setAttribute("MyEmail", mailSession);

}//if

chain.doFilter(request, response);

}// doFilter

public void destroy() {
/*
* called before the Filter instance is removed from service by the web
* container
*/
}

}

No comments: