Spring 5 SimpleUrlHandlerMapping支持@RequestMapping

时间:2018-09-26 11:31:08

标签: java spring spring-mvc

我正在从Spring 4.1.4迁移到Spring 5,并在配置问题上苦苦挣扎。

我有什么: 在web.xml中

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
    <props>
        <prop key="/auth">authController</prop>
...
</property>
</bean>

在控制器中:

<bean id="authController" class="com.my.AuthController">
    <property name="someProperty" ref="123123"/>
</bean>

AuthController.java:

public class AuthController {
  @RequestMapping(method = RequestMethod.OPTIONS)
  public void doOptions(HttpSession session, HttpServletRequest request, HttpServletResponse response) {
    //code here
  }

  @GetMapping
  public ModelAndView authorize(
            HttpSession session,
            HttpServletRequest request,
            HttpServletResponse response,
            Map<String, Object> model){
    //code here
  }

所以我不断收到错误No Handler Adapter for AuthController

如果我启用<mvc:annotation-driven/><bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/> 我收到重复的bean异常。这是因为我有很多由xml初始化的控制器bean(没有编写实际的Java代码),并且基于其中包含@RequestMapping的一些通用类。

有没有一种方法可以结合这两种方法并同时使用url映射和请求映射注释?

谢谢。

0 个答案:

没有答案