字节限制重新加载jsp页面时出现问题?
我是jsp的新手。我得到的错误是方法的代码_jspService(HttpServletRequest,HttpServletResponse)超过了65535字节的限制
我正在使用静态包括如
但页面没有加载…我也尝试动态包括如
\
没有运气..
任何帮助都会得到满足。
我们通过在Tomcat-Config中为JspServlet设置mappedfile
为false
来“修复”此处。 转到%TOMCAT_HOME%/conf/web.xml
并将以下init-param添加到JspServlet:
mappedfile false
这并没有解决64 KiB限制,但有助于以后发生这种情况,因为生成的代码比较短。
相反,我发现上面提到的多个文件答案的解决方案更好,即添加
mappedfile false
进入Web.XML文件。 但我没有在我的web.XML文件中找到“JspServlet”并找到了一个ref链接并放置了完整的映射
jsp org.apache.jasper.servlet.JspServlet mappedfile false
这对我有用。 希望这会对某人有所帮助。
当您运行Jsp时,默认情况下它会转换为Java代码。 在Java中,单个try catch循环中只能容纳65K代码。 所以不要在单个jsp中放入太多代码,而是可以将Jsp文件的数量导入到单个jsp文件中。 或者使用JSTL。
我从昨天起就遇到过这个问题,我使用动态include
如果其他人偶然发现这种情况,在我的情况下,它只是一个JSP,其中包含多个其他JSP文件的include语句(其中一些不止一次),所以只检查一下所有内容就解决了问题。
我在tomcat web xml中添加了trimSpaces也作为init-param,它解决了这个问题。
将一些逻辑移出JSP页面并转移到专用bean中。
每种Java方法的65k字节限制非常高 ,只有非常非常长的方法超过它。
还要注意,任何强常量的长度都不包含在该方法中,因此您只需在该单个方法中使用一些荒谬的逻辑(注意:JSP被编译为Servlet, _jspService
方法是否包含大部分内容) JSP)。
所以你只是有太多的逻辑。 根本不应该在JSP中有任何逻辑(仅输出渲染)。
另请注意,在这种情况下, <%@ include
和