Как вы думаете, можно ли создать контроллеры Spring Rest и использовать их в другом управляемом веб-приложении, отличном от Spring, развернутом на Tomcat? Я знаю, что могу использовать Spring компоненты на основе аннотаций в своем приложении, просто создав вручную AnnotationConfigApplicationContext, но вопрос в том, есть ли возможность интегрировать контроллеры Spring REST с сервлетами, доступными в этом управляемом веб-приложении, отличном от Spring.
Веб-приложение основано на языке gosu и использует сервлеты gosu. Сервлет Gosu:
открытый класс GosuServlet расширяет javax.servlet.http.HttpServlet
Я мог бы добавить новые сервлеты, добавив новые записи в файл servlet-config.xml. Например: я мог бы добавить
public class MyServlet extends GosuServlet {
private DispatcherServlet springServlet;
protected void service( req, res ) {
springServlet.service( req, res );
}
А затем вызовы делегатов
А что насчет сопоставления обработчиков? Я знаю, что сопоставление создается автоматически во время инициализации приложения весенней загрузки. Как запустить программно?
Кажется, что bean-компонент RequestMappingHandlerMapping отвечает за создание сопоставления и, вероятно, это будет сделано автоматически (часть afterPropertiesSet) при получении bean-компонента из appContext.
Что вы имеете в виду под управлением приложения, отличного от Spring? Приложение, которое не использует контейнер Spring ioc / applicationContext?
да. Обычно это приложение не использует DO. Вы несете ответственность за создание объекта.
да. Сервлет диспетчера Spring - это просто еще один сервлет. При желании он может сосуществовать с другими сервлетами.