2013-03-01 3 views
1

Я настроил веб-службу, которую я пытаюсь отладить в Eclipse.Не удается найти XML-файл в каталоге META-INF

Он имеет структуру каталогов, как это:

Root /
  + src
  + META-INF
  + WEB-INF

Внутри каталога META-INF, есть папка \xfire\services.xml.

При запуске сервера, у меня есть следующее сообщение об ошибке:

java.io.FileNotFoundException: class path resource [META-INF/xfire/services.xml] cannot be opened because it does not exist

Когда я бегу procmon.exe от Sysinternals, я вижу, что у меня есть «Путь не найден» ошибка на этих следующих путей:

  • C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\META-INF\xfire\services.xml
  • C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\MyWebService\WEB-INF\META-INF\xfire\services.xml
  • C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\MyWebService\WEB-INF\classes\META-INF\xfire\services.xml

Пока файл хранится в:

  • C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\MyWebService\META-INF\xfire\services.xml

Что я делаю неправильно?

ответ

0

Это похоже, что getRessources() используется для чтения вашего xml, поэтому файл должен находиться в пути к классам.

Просто переместите или скопируйте META-INF в один из исходных файлов проекта (я думаю, src или src/main ...).

+0

Я нашел обходное решение для решения моей проблемы, поэтому я не могу проверить, правильный ли ваш ответ. Я оставлю его открытым, пока кто-то с той же проблемой не сможет подтвердить, что он работает. спасибо – madgangmixers

2

У меня была проблема, когда папка META-INF должна была оставаться внутри WEB-INF ... таким образом, вы можете сохранить свои обычные папки. попробовать это ...

<servlet> 
    <servlet-name>XFire</servlet-name> 
    <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class> 
    <init-param> 
     <param-name>config</param-name> 
     <param-value>../META-INF/xfire/services.xml</param-value> 
    </init-param> 
</servlet> 

Принудительно расположение файла вам нужно. В этом случае я использовал ".. \", чтобы подняться на один уровень. Это делается в web.xml

Смежные вопросы