Настройка spring-mvc в приложении, которое уже использует его в качестве зависимости зависимости

Я не знал, как повернуть название, надеюсь, это понятно. Я работаю над веб-приложением, которое существует уже много лет и в настоящее время находится в производстве. Это веб-приложение использует spring-flex для отображения некоторых представлений, и одна из зависимостей spring-flex - это spring-mvc. Я думаю, что соответствующая ссылка была бы там.

Итак, у меня все зависимости уже настроены в моем pom, и DispatcherServlet уже настроен в моем web.xml с точной конфигурацией из руководства (я не тот, кто сделал интеграцию, я пытаюсь выяснить, как это было сделано).

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

<servlet-mapping>
    <servlet-name>flex_servlet</servlet-name>
    <url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>

Из приведенной мной ссылки видно, что по умолчанию при настройке Flex-брокера сообщений конфигурация выглядит следующим образом (хотя в проекте ее нигде не видно)

<!-- Maps request paths at /* to the BlazeDS MessageBroker -->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <value>
            /*=_messageBroker
        </value>
    </property>
</bean>

<!-- Dispatches requests mapped to a MessageBroker -->
<bean class="org.springframework.flex.servlet.MessageBrokerHandlerAdapter"/>    

Теперь, когда я хочу использовать spring-mvc для других задач, что мне делать?

  • Объявить другой DispatcherServlet или использовать тот же?
  • И если я использую тот же самый, могу ли я просто скопировать за предыдущий блок и завершить его, чтобы переопределить конфигурацию по умолчанию?
  • И если я не использую тот же самый, как каждый DispatcherServlet узнает, какой HandlerMapping использовать, так как он должен обнаружить его самостоятельно?

Спасибо за вашу помощь

РЕДАКТИРОВАТЬ: для дальнейшего использования, здесь соответствующие документы:

1 ответ

Решение

With BlazeDS you define a named service, the DispatcherServlet will use this name to send requests to the proper service. Итак, чтобы ответить на ваши вопросы:

  • Объявить другой DispatcherServlet или использовать тот же? Use the same one
  • И если я использую тот же самый, могу ли я просто скопировать за предыдущий блок и завершить его, чтобы переопределить конфигурацию по умолчанию? No change needed
  • И если я не использую тот же самый, как каждый DispatcherServlet узнает, какой HandlerMapping использовать, так как он должен обнаружить его самостоятельно? Irrelevant, you use the same one

Based on our conversation below, the answer from this question might help you aswell: Spring MVC: RESTful web services + BlazeDS integration possible in the same web application?

Другие вопросы по тегам