2011-12-22 1 views

ответ

3

Вот объяснение от spring forums

В основном это просто имя. Dispather - это автозагрузка контекста с именем [servletname] -servlet.xml, поэтому в этом случае есть сервлет под названием «spring», а другой - «диспетчер».

Вы указываете свои сервлеты в web.xml.

Например, если у вас:

<servlet> 
    <servlet-name>babubiba</servlet-name> 
    <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

в вашем web.xml тогда DispatcherServlet будет пытаться загрузить babubiba-servlet.xml по умолчанию.

Если вы можете изменить имя контекста, добавив contextConfigLocation init-param в конфигурацию сервлета.

+0

Но Spring Framework знает, как искать диспетчер файлов-servlet.xml? потому что, если я переименую dispatcher-servlet.xml в spring-servlet.xml, я получаю исключение - org.springframework.beans.factory.BeanDefinitionStoreException: IOException синтаксический анализ XML-документа из ресурса ServletContext [/WEB-INF/dispatcher-servlet.xml]; Вложенное исключение - это java.io.FileNotFoundException: не удалось открыть ресурс ServletContext [/WEB-INF/dispatcher-servlet.xml] –

+0

параметр в вашем web.xml называет сервлет – soulcheck