📄 emptycheckfilter.java
字号:
package jwadbook.filter;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.RequestDispatcher;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.*;import java.util.*;/** * * @author Jian (James) Cai */public class EmptyCheckFilter implements Filter{ public EmptyCheckFilter() { } public void init(final FilterConfig filterConfig) { } public void destroy() { } public void doFilter(final ServletRequest request, final ServletResponse response, FilterChain chain) throws java.io.IOException, javax.servlet.ServletException { Vector emptyprameters = new Vector(); HttpServletRequest httprequest = (HttpServletRequest)request; //to examine the request if there are empty values, fill the default one Enumeration paramNames = httprequest.getParameterNames(); while (paramNames.hasMoreElements()) { String paramName = (String)paramNames.nextElement(); String[] paramValues = httprequest.getParameterValues(paramName); if (paramValues.length== 1) { String paramValue = paramValues[0]; if (paramValue.length() == 0) { emptyprameters.addElement(paramName); } // gotoPage("/EmptyValueServlet", request, response) } else { for(int i=0; i<paramValues.length; i++) { String paramValue = paramValues[i]; if (paramValue.length() == 0) { emptyprameters.addElement(paramName); break; } } } } if (emptyprameters.size()!=0) { response.setContentType("text/html"); PrintWriter out = response.getWriter(); String title = "Empty Input! Please Enter Again"; out.println("<HTML>\n"+ "<HEAD><TITLE>"+ title + "</TITLE></HEAD>\n"); out.println( "<BODY>\n"+ "<CENTER>\n" ); out.println(" <FONT COLOR='#009999' SIZE='4' face='Arial'> "); out.println(" <STRONG>The following values are missing:</STRONG> "); out.println(" </FONT> "); out.println(" <HR> "); out.println(" <H2></H2> "); out.println( "<H1 ALIGN=CENTER>" + title + "</H1>\n" + "<TABLE BORDER=1 ALIGN=CENTER>\n" + "<TR BGCOLOR= \"#99cee6\">\n" + "<TH>Parameter Name"); Enumeration empty = emptyprameters.elements(); while (empty.hasMoreElements()) { String emptyName = (String)empty.nextElement(); out.print("<TR><TD>" + emptyName + "\n<TD><TR>"); out.println("</UL>"); } out.println("</TABLE></CENTER>\n</BODY></HTML>"); } else { chain.doFilter(httprequest, response); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -