Windows Server 2016 就地升级后,Java 应用程序 (Tomcat) 无法找到许可证文件

Windows Server 2016 就地升级后,Java 应用程序 (Tomcat) 无法找到许可证文件

描述

你好,ServerFault 社区,

我们最近进行了就地升级Windows Server 2012 R2Windows 服务器 2016,ApacheTomcat 8.5正在运行。升级后,我们在查找 Tomcat 上运行的一个应用程序的许可证文件时遇到了问题。(升级前,此过程正常)每当无法找到许可证文件时,应用程序中都会显示一个提示,我们可以在其中输入文件路径。输入正确的路径后(我们用一些完全错误的路径测试了输出),我们会看到以下日志消息:

替换了一些细节*******

net.padlocksoftware.padlock.validator.ValidatorException: The license did not pass validation
        at net.padlocksoftware.padlock.validator.Validator.validate(Validator.java:349)
        at net.padlocksoftware.padlock.validator.Validator.validate(Validator.java:298)
        at com.webatus.wam.bo.Impl.LicenseManagerImpl.validate(LicenseManagerImpl.java:71)
        at com.webatus.wam.bo.Impl.LicenseManagerImpl.LoadLicenseFiles(LicenseManagerImpl.java:117)
        at com.webatus.wam.controller.LicenseController.handleRequestInternal(LicenseController.java:53)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)

org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [dispatcher] in context with path [/********] threw exception
    java.io.FileNotFoundException: E:\Tomcat8\temp\**********\license (Access is denied)
        at java.io.FileOutputStream.open0(Native Method)
        at java.io.FileOutputStream.open(Unknown Source)
        at java.io.FileOutputStream.<init>(Unknown Source)
        at java.io.FileOutputStream.<init>(Unknown Source)
        at org.apache.commons.fileupload.disk.DiskFileItem.write(DiskFileItem.java:426)
        at com.webatus.wam.bo.Impl.LicenseManagerImpl.saveLicenseFile(LicenseManagerImpl.java:93)
        at com.webatus.wam.controller.LicenseController.handleRequestInternal(LicenseController.java:40)
        at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)

环境信息:

操作系统:Windows 服务器 2016 Apache Tomcat 版本:8.5 应用:无法透露应用程序的名称。(制作该应用程序的公司已不再营业,无法帮助我们解决此问题)

到目前为止我们已经尝试过:

  • 安装不同版本(Windows 2022、2019、2019)
  • 我们已经检查路径和文件名以确保它们的正确性。
  • 我们已经验证了目录和许可证文件的权限,确保适当的用户可以访问。我们尝试了多种逻辑权限组合,包括授予所有人完全控制权。
  • 我们尝试以不同的用户身份运行 tomcat 服务,包括本地管理员帐户。
  • 我们尝试以管理员身份通过命令行运行 tomcat 服务。
  • 我们检查了 Tomcat 配置文件,以确保没有缺少对许可证文件的引用。
  • 我们检查了仍在 Windows Server 2012 上运行的生产服务器的目录权限/服务设​​置。据我们所知,设置是相同的,但许可证文件可以在生产服务器上找到。

预期结果:

我们的目标是在升级到 Windows Server 2016 后成功在应用程序中加载许可证文件。我们想知道是否需要在 Tomcat 或 Windows Server 环境中进行任何特定的配置更改才能解决此问题。遇到此类问题时,您应该检查哪些典型事项?

我们感谢您提供的任何帮助和建议,以帮助我们解决此问题。

谢谢你!

相关内容