import java.io.*; import javax.servlet.*; public class HelloWorldAccessFilter implements Filter { public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { // リモートアドレス取得 String remoteAddr = req.getRemoteAddr(); System.out.println(remoteAddr + "からアクセスがありました"); // アドレスが192.168.1で始まる場合 if (remoteAddr.startsWith("192.168.1")) { System.out.println("アクセスOK"); // 元々要求されていたリソースを呼び出します chain.doFilter(req, res); } else { // それ以外の場合 System.out.println("アクセス拒否"); // エラーメッセージ用JSPに転送します RequestDispatcher rd = req.getRequestDispatcher("/error.jsp"); rd.forward(req, res); } } public void init(FilterConfig config) throws ServletException { } public void destroy() { } }