需要您对问题的建议。 问题是,我在 tomcat9.0.41 上运行了这个 Web 应用程序 在该应用程序中,我们具有在需要时导出网络位置上的文件的功能。
唯一的前提是配置的导出目录可以从应用服务器主机解析(可写网络路径),即启动Java虚拟机(应用服务器)的用户应该对配置的导出路径有写权限。
现在我们可以在网络位置手动创建此创建文件。 现在通过应用程序执行相同的任务并产生问题。
现在我们在这里检查 3 个条件:
- 我们有一个有效的位置...通过
- 共享位置在网络上。 ..通过
- 共享位置可写.. 失败
对于条件 3,我们使用以下方法检查位置是否可写:
SecureRandom random = new SecureRandom();
StringBuilder path = new StringBuilder(file.getPath());
path.append(System.getProperty("file.separator"));
path.append(Double.toString(random.nextDouble()));
File tempFile = new File(path.toString());
writable = tempFile.createNewFile();
现在,我想更多地了解这种情况,我可以手动创建此文件,但不能通过应用程序创建。如果有办法查看当前会话的权限。
如果你能提出一些我可以尝试的步骤。 这将非常有帮助。