Если вы используете Spring в веб-приложении, вам никогда не следует загружать ClasspathXmlApplicationContext вручную.Ваш контекст будет контекстом веб-приложения, а не контекстом приложения classpath и будет загружен автоматически, если вы добавите в ваш файл web.xml следующее:
Код:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-config.xml</param-value>
</context-param>
при условии, что выОсновной конфигурационный файл Spring называется spring-config.xml и находится в папке WEB-INF.
Загрузка контекста classpath программным способом всегда некорректна для веб-приложения, у вас должен быть один контекст, загруженный слушателем и (необязательно)еще один контекст, загружаемый DispatcherServlet (если вы используете Spring Web Mvc в качестве вашей инфраструктуры MVC).Я предлагаю вам начать с чтения некоторой документации и попробовать пример Petclinic, чтобы получить представление о том, как правильно использовать Spring в веб-приложении.
Кроме того, ваша стратегия упаковки ушей неверна;ваша конфигурация Spring зависит от веб-приложения, поэтому вы должны поместить свои конфигурационные файлы Spring в WAR, в корень веб-приложения (вероятно, лучшее место где-то в WEB-INF, наряду с web.xml и другими дескрипторами).Если у вас есть ресурсы, такие как классы, используемые как ejb, так и webapp, вы должны упаковать эти классы в jar, поместить этот jar в каталог lib на вашем ухе и добавить запись Class-Path для jar в MANIFEST.MF webapp &каждый из ejb банок.Если у вас есть файлы конфигурации со свойствами, зависящими от среды (например, jdbc config и пути к дискам), вы не должны упаковывать их в ухо, а вместо этого позволить приложению считывать их извне из файловой системы (PropertyPlaceholderConfigurer - ваш лучший способ).
Для начала я предлагаю вам использовать функцию создания ушей Eclipse, чтобы увидеть, как должно быть упаковано ваше веб-приложение, прежде чем вы начнете использовать ant для создания своего проекта.
Я также предлагаю вам рассмотреть Maven в качестве компиляции сборки- пакетная стратегия, поскольку это позволит автоматизировать и стандартизировать проект, а архетип веб-приложения maven позволит вам мгновенно создать правильный шаблон для веб-приложения j2ee.