Я пытаюсь использовать Spring для настройки веб-приложения, развернутого в JBoss. Я добавил это в web.xml:Использование Spring ContextLoaderListener в конфигурации JBoss с ошибками по умолчанию
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
Однако, я на основе моего конфига на «по умолчанию» конфигурации JBoss, которая включает войны, такие как JMX-console.war, и теперь они не могут развернуть с ошибкой:
[ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml]
Так как я могу сказать ContextLoaderListener игнорировать эту ошибку, или по крайней мере обхода этих конкретных войн, в то же время пытается обработать свои собственные войны?
Я не уверен, что следую за вами ... вы говорите, что я должен добавить /WEB-INF/applicationContext.xml ко всем файлам .war, даже если это всего лишь пустой файл? Настройка по умолчанию jboss включает в себя 6 войн: admin-console.war, http-invoker.sar/invoker.war, jbossws.sar/jbossws-management.war, jmx-console.war, management/console-mgr.war и ROOT .war. Я работал над проблемой, выполнив это (добавив пустой applicationContext.xml), просто кажется, что это хакски, чтобы изменить эти .wars, которые по умолчанию поставляются с jboss и никогда не будут иметь конфигурацию пружины. –
Нет, я имел в виду, что вы должны иметь ContextLoaderListener, объявленный только для вашего приложения, а не для всех – Bozho
Oh! По какой-то причине я был под неправильным представлением о том, что единственное место, где вы могли бы добавить фильтры, было в web.xml под jbossweb.deployer. Спасибо, это, конечно, правильное решение! –