Ошибки чтения каталога на JBoss 5 из-за протокола vfszip - PullRequest
0 голосов
/ 27 октября 2011

Мне нужно проанализировать несколько файлов в моем веб-приложении.

Файлы находятся в каталоге (называемом «edms») на верхнем уровне моего .war-файла. Когда я пытаюсь получить указатель на каталог для обработки, я получаю ошибки, поскольку возвращаемый ресурс имеет тип протокола vfszip.

Например, когда я использую MyClass.class.getResource ("/ edms"), я получаю что-то вроде "vfszip: C: /jboss/server/default/deploy/MyWar.war/edms".

Если я затем использую этот URL-адрес с объектами File, он потерпит неудачу, поскольку не сможет найти базовый каталог и содержащиеся в нем файлы.

Я смотрел на использование класса Spring ResourceUtils, но, похоже, не могу заставить их дать мне то, что я имел, что должно быть в состоянии: -

  1. Получить указатель на каталог (в моем .war-файле)
  2. Зацикливать каждый файл в каталоге - читать и анализировать его содержимое

Есть идеи?

Спасибо

Сара

Ответы [ 2 ]

0 голосов
/ 30 октября 2011

Существует несколько возможных решений:

  • , с одной стороны, обновление до Spring 3+ должно автоматически решить эту проблему (используйте Spring 3.0.3+ для JBoss AS6 или выше;
  • Если вы застряли в Spring 2.5, вы можете использовать Snowdrop (http://www.jboss.org/snowdrop), и, более конкретно, VfsXmlWebApplicationContext (для подробностей прочитайте this .

Надеюсь, это поможетМариус

0 голосов
/ 27 октября 2011

Как взломать, что произойдет, если вы просто substring часть протокола того, что MyClass.class.getResource("/edms") возвращает, и используете остальную часть в выражении new File(...)?

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