java - Web 项目下 ESAPI.properties 的正确位置

标签 java eclipse esapi

我在我的项目中添加了一个 OWASP ESAPI 库。目前我遇到了一个问题,在哪里可以找到 ESAPI.properties 文件。这个项目稍后应该部署在我无权访问的几台服务器上。所以在我看来,没有办法自定义org.owasp.esapi.resources 变量,我不能把它放在用户主目录下。所以我唯一可以放这个文件的地方是 SystemResource Directory/resourceDirectory 但它在哪里呢?我已经尝试放置这些文件:

.esapi/ESAPI.properties
esapi/ESAPI.properties
ESAPI.properties

进入这些位置:

$CATALINA_HOME/webapps/<MY_PROJECT>/
$CATALINA_HOME/webapps/<MY_PROJECT>/WEB-INF
$CATALINA_HOME/webapps/<MY_PROJECT>/WEB-INF/classes
$CATALINA_HOME/webapps/<MY_PROJECT>/META-INF

但是在所有这些地方我都得到一个错误: 在 SystemResource Directory/resourceDirectory: .esapi\ESAPI.properties 中找不到

那么我应该在哪里找到这个文件呢?这是一个遗留项目(只是没有 Maven 的Eclipse 项目)并且它的结构非常难看。没有像 /src/main/resources 这样的目录,在我看来这个 ESAPI.properties 文件应该位于。我已经创建了这个目录,但是在将 WAR 存档部署到 Tomcat 之后,这个文件最终应该在哪里?

最佳答案

ESAPI.properties 文件应该位于 esapi 目录下的 CLASSPATH 中。

假设您有一个模块,它以 2 种形式中的任何一种形式部署到 war 中:作为 jar,或作为类展开。 只需在使用 OWASP ESAPI 第 3 方的模块的源代码中创建一个目录。

从 eclipse 的角度来看,无论您是否使用 maven,文件只需要位于 CLASSPATH 中。使用maven时,maven的resources目录被m2eclipse插件转换为eclipse的sources目录。

示例(使用 eclipse 标准源代码结构):

src
|---com
|   |---module
|   |   |---SomeClass.java
|---esapi
|   |---ESAPI.properties

关于java - Web 项目下 ESAPI.properties 的正确位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29842208/

相关文章:

Java 安全与 ESAPI

java - 使用 Java 的 Graphics 或 Graphics2D 类,如何绘制字符串?

java - 为什么我的火箭在碰撞时生命周期不会减少?

java - 使用 ESAPI 时看不到程序的日志消息

javascript - gwt 脚本注入(inject)器不同步

eclipse - 在 Eclipse Indigo 中设置外部输出文件夹

javascript - encodeForHTMLAttribute 与 encodeForJavaScript

java - 使用角色注释进行保护不起作用( Jersey )

java - 使用 SPARK 从 zip 到 seq

java - 如何更改 Eclipse 上的 SDK 应用程序引擎