我有一个Java项目,我发现了一个漏洞并尝试使用ESAPI解决它,但是当我执行它时,我发现了以下问题:
我添加了这段代码:
<% import org.apache.commons.lang.StringEscapeUtils;%>
这个代码制作问题和其余代码依赖于它。 第一个代码是:
boolean bReportFormat=(request.getParameter("reportFormat")!=null);
f.setGroupingUsed(bReportFormat);
,第二个代码是:
<% import org.apache.commons.lang.StringEscapeUtils;%>
<% String bReportFormat=(request.getParameter("reportFormat")!=null);
String input = request.getParameter("reportFormat");
String Comment = ESAPI.validator().getValidInput("reportFormat", input, "CommentRegex", 400, false, errorV);
String bReportFormat= ESAPI.encoder().encodeForHTML( Comment );
f.setGroupingUsed(bReportFormat);
%>
我正在使用ESAPI,而不添加任何其他内容。 请有谁帮助解决方案,谢谢。
答案 0 :(得分:0)
参见How do you import classes in JSP?
JSP中导入的正确语法是
<%@ page import="org.apache.commons.lang.StringEscapeUtils" %>
您需要page
关键字和import=
选项,而不需要分号。
正常&lt; %%&gt;语法用于定义内联代码 - 将其视为在Java方法体内注入代码 。方法内不允许import
个语句 - 它们必须在源文件的顶部完成。 (Tomcat将JSP源转换为Java源文件。)<% page %>
指令用于发出页面级声明,例如Java import
语句。