Я нашел несколько похожих сообщений по этой проблеме здесь, но ни одно из решений не помогло мне.
Я обновил приложение Spring MVC с одним простым классом @Controller с Spring 4.3.x до 5.2 0,5. Класс, ранее расширенный MultiActionController, который теперь отсутствует в 5.2.5. Поэтому я аннотировал класс с помощью @Controller и добавил аннотации следующим образом:
@Controller
@RequestMapping()
public class FrontController {
@GetMapping
public ModelAndView defaultAction(HttpServletRequest httpRequest, HttpServletResponse httpResponse) throws Exception {
(...)
return null;
}
Компонент FrontController по-прежнему объявлен в XML. Поскольку есть дополнительная конфигурация bean-компонента, я не хотел бы выполнять работу по преобразованию всего этого в приложение, полностью основанное на аннотациях.
Сопоставление URL выполняется с помощью следующего определения компонента.
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<map>
<entry key="/*" value-ref="FrontController"/>
</map>
</property>
<property name="alwaysUseFullPath" value="true"/>
</bean>
Записи в сети. xml:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/prozess.xml</param-value>
</context-param>
<!-- Listener fuer das Initialisieren von Spring -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- Spring Front Controller Servlet-->
<servlet>
<servlet-name>prozess-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>prozess-dispatcher</servlet-name>
<url-pattern>*</url-pattern>
</servlet-mapping>
Wenn, вызывающий URL Я получаю следующую ошибку:
Error 500: javax.servlet.ServletException: No adapter for handler [FrontController@9a5e4341]: The DispatcherServlet configuration needs to include a HandlerAdapter that supports this handler
Одной из проблем здесь может быть сочетание конфигурации на основе XML и аннотаций. Но я еще не понял, какой подход я должен использовать, чтобы сделать это правильно. Как я уже сказал, я хотел бы сохранить файлы конфигурации XML, так как это было бы довольно много работы для преобразования.
Я описал всю необходимую информацию?
Спасибо за любую помощь, Йода