【问题标题】:Problems deploying WAR file from Netbeans to Tomcat将 WAR 文件从 Netbeans 部署到 Tomcat 时出现问题
【发布时间】:2010-07-27 02:12:21
【问题描述】:

我正在尝试为 build forge 配置 build.xml 文件,但似乎我在使用 java servlet 页面所需的库时遇到了问题。我实际上正在尝试使用 OWASP 的 AntiSamy 库,但我不断收到策略异常,然后是找不到文件

org.owasp.validator.html.PolicyException: java.io.FileNotFoundException: C:\Program%20Files\Apache%20Software%20Foundation\apache-tomcat-6.0.29\webapps\XSSDemo\WEB-INF\classes\ ...\antisamy.xml(系统找不到指定的路径)

但是,antisamy.xml 文件肯定在这个位置。

所以我尝试使用 Netbeans 清理和构建一个我希望可以工作的 WAR 文件,因为当我通过 Netbeans 运行 Web 应用程序时它可以正常工作。但是,我遇到了同样的问题。当我通过 WAR 部署中未发生的 ide 运行应用程序时,Netbeans 是否可能创建了一些参考? antisamy.xml 位置中的 URL 编码是否会导致问题?

感谢您的帮助。

编辑:我在这里将长类路径压缩成三个点。实际响应具有实际的类路径。我没有收到任何类型的安全错误。

【问题讨论】:

  • 您是否尝试过将 XML 文件直接放在 WEB-INF/classes 目录中,而不是放在子目录中?

标签: netbeans war web-deployment


【解决方案1】:

我遇到的问题实际上与部署无关——它是我的 java servlet 中的文件引用本身。 Program Files 文件夹中路径“%20”中的编码导致 FileNotFoundException。在 netbeans 中没有发生这种情况的原因是因为部署的文件位于 c:\users... 文件夹中,并且没有要编码的空格。还解释了为什么该应用程序在其他计算机上运行良好,它们的 tomcat 文件夹直接位于根目录中。 This is the actual solution to my problem. 谢谢大家的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-13
    • 2011-06-03
    • 1970-01-01
    • 2011-03-23
    • 2018-10-12
    • 2020-03-18
    • 1970-01-01
    • 2012-12-16
    相关资源
    最近更新 更多