Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何不向Spring DispatchServlet添加HandlerMapping_Java_Spring_Spring Mvc - Fatal编程技术网

Java 如何不向Spring DispatchServlet添加HandlerMapping

Java 如何不向Spring DispatchServlet添加HandlerMapping,java,spring,spring-mvc,Java,Spring,Spring Mvc,我有一个SpringMVC应用程序。它有一个扩展DefaultAnnotationHandlerMapping的自定义类。此类用于一些元工具,以生成报告和工具,用于MVC应用程序的API。DispatchServlet不需要使用它 我正在将这个系统从Spring3.2升级到4.1。此升级的结果之一是DispatchServlet中HandlerMapper的顺序发生了更改。现在,自定义类的优先级高于我们从中获取适当处理程序的RequestMappingHandlerMapping 所以我的问题是

我有一个SpringMVC应用程序。它有一个扩展DefaultAnnotationHandlerMapping的自定义类。此类用于一些元工具,以生成报告和工具,用于MVC应用程序的API。DispatchServlet不需要使用它

我正在将这个系统从Spring3.2升级到4.1。此升级的结果之一是DispatchServlet中HandlerMapper的顺序发生了更改。现在,自定义类的优先级高于我们从中获取适当处理程序的RequestMappingHandlerMapping

所以我的问题是:

  • 有没有办法确保自定义类根本不被添加到Dispatcher中?我还没有将其配置为这样做。我认为Spring只是把它捡起来,因为它是一个HandlerMapping
  • 如果没有的话,在哪里是最好的地方设置订单,这样我可以把它推低。AbstractHandlerMapping使order的getter和setter成为final(因此我不能重写getter)。我试图在自定义类的构造函数中设置一个低优先级,但很明显spring稍后会将其重置回0

  • 通过
    WebApplicationInitializer
    以编程方式设置您的
    DispatcherServlet
    ,并设置为false


    在这种情况下,Spring将只查找名为
    HandlerMapping
    HandlerMapping
    。默认MVC配置提供的一个将具有该名称

    这确实删掉了我不想要的,但也删掉了我想要的。最后是BeanNameUrlHandlerMapping和DefaultAnnotationHandlerMapping。如何设置要使用的确切handlermappings?