1

ネットワーク上のフォルダーを読み取り、txt ファイルのリストを取得しようとしています。Eclipse でローカルにテストすると問題なく動作しますが、Apache Tomcat 7 サーバーにデプロイすると常に null が返されます。

サーバーは閲覧しようとしているフォルダにアクセスできるため、アクセス権の問題ではないようです。何が問題なのかわかりませんが、サーバーの設定を変更する必要がありますか、それとも何か他のものですか?

private List<File> readDirectory() {
    File test = new File(envMap.get(database));
    List<File> files = new ArrayList<File>();
    try {
        files = FileListing.getFileListing(test);
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    List<File> txtFiles = new ArrayList<File>();
    if (files != null) {
        for (File file : files) {
            if (file.isFile() && file.getName().endsWith(".txt")) {
                txtFiles.add(file);
            }
        }
    }
    return txtFiles;
}

このhttp://www.javapractices.com/topic/TopicAction.do?Id=68を使用しましたFileListing.getFileListing

再確認したところ、FileNotFoundException: Directory does not exist. ディレクトリは存在し、サーバーにはアクセス権があるため、どうすればよいかわかりません。

4

2 に答える 2

0

問題が何であるかを突き止めたところ、デフォルトで Apache がネットワーク アクセスのないローカル システム アカウントで実行されていることが判明しました。それをネットワークアクセスのある別のアカウントに変更すると、問題が解決しました。

ソース: http://blog.mattwoodward.com/2010/08/accessing-network-drive-from-apache-and.html

于 2013-09-05T12:33:48.467 に答える