一尘不染

如何允许在Tomcat上运行的应用程序访问网络目录?

tomcat

我正在Windows
7上运行的Tomcat服务器上运行Web应用程序(用Java编写)。在该应用程序的某个位置,我尝试通过基本java.io.File类访问远程计算机上的目录。

如果我通过“ tomcat6.exe // TS //
MyServiceName”从命令行启动Tomcat,则我的应用程序可以成功找到网络目录。但是,当我将Tomcat作为服务启动时,它认为该目录不存在。

根据一些研究,我认为这是身份验证问题。我已经将Windows服务更新为“登录为”域用户帐户,并且已经更新了tomcat服务以使用’tomcat6.exe
// US // MyServiceName –User =“ bhardage”添加用户名和密码。 –Password =“
xxx”’,但是即使进行了这两个更改,它仍然找不到网络目录。

我也尝试过’tomcat6.exe // US // MyServiceName –User =“ mydomain \\ bhardage”
–Password =“ xxx”’,但是没有运气。

谁能告诉我让我的Web应用程序在其他用户下运行的正确方法?

任何帮助/建议,我们将不胜感激。

谢谢,

北京


阅读 336

收藏
2020-06-16

共1个答案

一尘不染

“登录身份”功能似乎存在一些问题。也许这些问题仍然存在。

您可以尝试通过Windows服务管理器中tomcat服务的属性来设置用户帐户。

这是一个说明。看一下尝试次数3。它基于旧版本的tomcat(5.5),但工作方式相同。

编辑:

服务启动tomcat时,可​​能未映射您的网络目录。这可能是因为用户在单独的登录操作中登录。

在访问网络目录之前,尝试执行“ net use”命令。这可以通过以下方式完成:

Runtime.exec("net use Z: \\\\My\\Share")
2020-06-16