无法读取网络共享文件夹上的文件 [webbapp 已结束 [=10=] 作为服务]
Can't read files on network shared folder [webbapp is over tomcat as a service]
我在 Tomcat 7.0.57 上有一个网络应用程序 Windows 8.1 运行 它作为服务,这是指示复制本地网络共享目录中的文件,例如 \\Network_machine\Shared_folder,但无法这样做。
我可以在 windows 资源管理器中访问共享文件夹而无需任何身份验证,因为它具有所有人阅读的权限。以下代码正在检查目录是否存在:
String sourceURL = this.servletContext.getInitParameter("sourceURL");
log.debug("---------->Source reports directory : " + sourceURL);
File sourceDir = new File(sourceURL);
log.debug("---------->Source directory exists : "+sourceDir.exists());
if (sourceDir.exists()) {
String files[] = sourceDir.list();
log.debug("----------> Total files in source dir :" + files.length);
List<String> newFiles = new ArrayList<String>(Arrays.asList(files));
newFiles.removeAll(processedFiles);
log.debug("----------> Latest files in source dir :" + newFiles.size());
File file = null;
if (newFiles.size() > 0) {
for (String fileName : newFiles) {
file = new File(sourceURL + Constants.FILE_SEP + fileName);
latestSourceFiles.add(file);
}
}
} else {
log.debug("Source reports directory " + sourceURL + " is not found");
}
附加信息:
log - 源目录存在正在返回 'FALSE'。
正如 Kenneth 所说,您需要将共享文件夹映射到一个驱动器,然后直接写入该驱动器。
http://windows.microsoft.com/en-us/windows/create-shortcut-map-network-drive
我在 Tomcat 7.0.57 上有一个网络应用程序 Windows 8.1 运行 它作为服务,这是指示复制本地网络共享目录中的文件,例如 \\Network_machine\Shared_folder,但无法这样做。
我可以在 windows 资源管理器中访问共享文件夹而无需任何身份验证,因为它具有所有人阅读的权限。以下代码正在检查目录是否存在:
String sourceURL = this.servletContext.getInitParameter("sourceURL");
log.debug("---------->Source reports directory : " + sourceURL);
File sourceDir = new File(sourceURL);
log.debug("---------->Source directory exists : "+sourceDir.exists());
if (sourceDir.exists()) {
String files[] = sourceDir.list();
log.debug("----------> Total files in source dir :" + files.length);
List<String> newFiles = new ArrayList<String>(Arrays.asList(files));
newFiles.removeAll(processedFiles);
log.debug("----------> Latest files in source dir :" + newFiles.size());
File file = null;
if (newFiles.size() > 0) {
for (String fileName : newFiles) {
file = new File(sourceURL + Constants.FILE_SEP + fileName);
latestSourceFiles.add(file);
}
}
} else {
log.debug("Source reports directory " + sourceURL + " is not found");
}
附加信息:
log - 源目录存在正在返回 'FALSE'。
正如 Kenneth 所说,您需要将共享文件夹映射到一个驱动器,然后直接写入该驱动器。
http://windows.microsoft.com/en-us/windows/create-shortcut-map-network-drive