Файлы списка приложений JSF из src / main / resources / somefolder - PullRequest
0 голосов
/ 06 декабря 2011

Я пытаюсь получить список файлов из папки в каталоге src / main / resources моего веб-приложения.У кого-нибудь есть решение ?Итак, одна проблема заключается в том, что в моем classpath есть только glassfish.jar.Я не нахожу точку входа, откуда я могу начать.Это огромный проект.

С уважением, Хольгер

1 Ответ

0 голосов
/ 07 декабря 2011

Решение пока что: оно работает, но не удовлетворяет меня из-за абсолютного пути.

org.apache.commons.io.FileUtils должен быть включен.

public Collection<File> queryResourceFileCollectionByDirectoryMember(Class clazz, String resourcePathToMember, String[] extensions) {
    logger.info("------- FileTools : queryResourceFileCollectionByDirectoryMember");

    try {
        //String[] extensions = {"xml"};
        URL resourceURL = clazz.getResource(resourcePathToMember);//"/fields/testOITM.xml" <- one XML file in the /src/main/resources/fields/ folder to get the absolutepath which after deployment is WEB-INF/classes/fields
        String resourcePath = resourceURL.getPath();

        //Remove the leading slash
        String resourcePathWithoutFirstChar = resourcePath.substring(1);
        logger.log(Level.INFO, "------- FileTools : queryResourceFileCollectionByDirectoryMember: resourcePath :{0} :", resourcePathWithoutFirstChar);
        File resourceFileToGetDirectory = new File(resourcePathWithoutFirstChar);
        String resourceDirectoryPath = resourceFileToGetDirectory.getParent() + File.separator; //"c:/Users/xuser/Documents/NetBeansProjects/BOneBApp/target/classes/"
        File resourceDirectory = new File(resourceDirectoryPath);
        Collection<File> files = FileUtils.listFiles(resourceDirectory, extensions, true);
        return files;
    } catch (Exception e) {
        logger.log(Level.SEVERE, "******* FileTools : queryResourceFileCollectionByDirectoryMember : {0}", e.getMessage());
        return null;
    }
}

Клац может быть любого класса веб-приложения.

С уважением, Хольгер

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...