测试show.jsp发生错误
来源:3-4 编码过滤器
慕用6234762
2020-04-11 01:00:36
java.lang.NullPointerException
org.apache.tomcat.util.buf.B2CConverter.getCharset(B2CConverter.java:60)
org.apache.catalina.connector.Request.setCharacterEncoding(Request.java:1667)
org.apache.catalina.connector.RequestFacade.setCharacterEncoding(RequestFacade.java:329)
com.imooc.sm.global.EncodingFilter.doFilter(EncodingFilter.java:21)
package com.imooc.sm.global;
import javax.servlet.*;
import java.io.IOException;
/**
* 编码过滤器
*/
public class EncodingFilter implements Filter {
//设置字符级
private String encoding;
@Override
public void init(FilterConfig filterConfig) throws ServletException {
if(filterConfig.getInitParameter("Encoding")==null){
encoding = "UTF-8";
}
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
servletRequest.setCharacterEncoding(encoding);
servletResponse.setCharacterEncoding(encoding);
filterChain.doFilter(servletRequest,servletResponse);
}
@Override
public void destroy() {
encoding=null;
}
}<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <!--配置字符过滤器--> <filter> <filter-name>Encoding</filter-name> <filter-class>com.imooc.sm.global.EncodingFilter</filter-class> <init-param> <param-name>Encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>Encoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!--配置servlet核心控制器--> <servlet> <servlet-name>Global</servlet-name> <servlet-class>com.imooc.sm.global.DispatcherServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Global</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
1回答
好帮手慕阿满
2020-04-11
同学你好,ecoding值在定义时已经给出。另外在EncodingFilter类的init()方法中,应该判断不为null,给encoding赋值,如:

建议同学修改一下再试试。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
相似问题
回答 1
回答 2