所报异常为:
java.lang.NoSuchMethodError: javax.servlet.jsp.JspFactory.getJspApplicationContext(Ljavax/servlet/ServletContext;)Ljavax/servlet/jsp/JspApplicationContext;
解决办法为:
1. 如果web-inf下的lib里没有(jsp-api.jar )这个包,删除服务器上已部署的项目,然后重新建立部署,重启服务,OK!
2. 如果web-inf下的lib里有(jsp-api.jar )这个包,请把它删除,重启服务,OK (原因是在tomcat中已经有了这个包)。
所报异常为:
java.lang.IllegalStateException: getOutputStream() has already been called for this response
解决办法:
在做Jsp页面导出excel文件时报这个错误,
tomcat下jsp出现getOutputStream() has already been called for this response异常的原因和解决方法
出现此错误一般都是在jsp中使用了输出流(如输出图片验证码,文件下载等),没有妥善处理好的原因。
这是在释放在jsp中使用的对象,会调用response.getWriter(),因为这个方法是和
response.getOutputStream()相冲突的!所以会出现以上这个异常。
在使用完输出流以后调用以下两行代码即可解决:
out.clear();
out = pageContext.pushBody();