0

我遇到了一个奇怪的问题,我的 spring 控制器被一次请求调用了两次,但是当我的 firefox 变成私人浏览时,问题就消失了

控制器是:

@Controller
@RequestMapping("/user/*")
public class UserController {



@RequestMapping(method=RequestMethod.GET, value="home")
public String home(Model model, NativeWebRequest request, HttpSession session) {



    return "user/homepage";
}


}

注意:我已经验证了 user/homePage.jsp 并且它没有任何引用空值的静态资源(而且问题仅发生在非隐私浏览上)。

提前感谢您的及时帮助

4

1 回答 1

0

您可以检查的一件事是扫描控制器组件的应用程序上下文是否被加载了两次。例如,在您的 web xml 中,您将调度程序 servlet 配置为在 web.xml 中命名为调度程序,并配置 contextConfigLocation 以加载以下 bean 配置文件。

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:dispatcher-servlet.xml</param-value>
</context-param>

这可能导致控制器在每个请求中被命中两次,因为调度程序 servlet 会在调度程序 servlet 启动时自动加载一次,而在 ContextLoaderListener 启动时会自动加载一次。

于 2012-12-18T19:13:52.993 回答