一直在关注 esapi4java-core-2.0-install-guide.pdf for Eclipse 并将其应用到 Websphere 7.5 环境中。
第 1 步 - 我在库中添加了 esapi.jar(项目 > 属性 > Java 构建路径 > 库选项卡 > 添加外部 JAR)。
第 2 步 - 我将 esapi 和验证 .properties 文件放在我机器上的一个文件夹中。
第 3 步 - 我选择为所有运行配置添加 esapi(Windows > Preferences > Java > Installed JREs)。我突出显示了 WebSphere Application Server v7.0 JRE,选择了“编辑”并将 esapi.jar 添加到该库列表中。在同一个表单上,我将 -Dorg.owasp.esapi.resources="/path/to/.esapi" 参数添加到 Default VM Arguments 提示符,即我的 esapi 和验证 .properties 文件所在的路径。
这是 JSP 页面上失败的代码:
<%@ page language="java" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<%@ page import="java.net.*" %>
<script type="text/javascript" language="javascript">
function validateForm()
{
var userURL = "http://www.google.com";
var isValidURL = ESAPI.validator().isValidInput("URLContext", userURL, "URL", 255, false);
if (isValidURL) {
alert("true");
} else {
alert("false");
}
}
</script>
执行这段代码后,我收到错误:'ESAPI' 未定义(发生在 var isValidURL 语句上)。
我错过了什么?