我正在尝试使用多动作控制器,因此我可以将它用于导航目的,我已经有一个处理json的工作,它们在同一个配置文件中,json映射工作,并调用正确的方法。
由于某种原因,我的第二个控制器(在xml文件中首先定义)不起作用,我在日志文件中得到一个没有url映射的404。这可能是我错过的一些简单但我无法看到的东西。感谢任何帮助!
<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" />
<bean name="navigationController" class="NavigationController">
<property name="methodNameResolver">
<bean class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver">
<property name="mappings">
<props>
<prop key="/dashboard">dashBoard</prop>
</props>
</property>
</bean>
</property>
</bean>
public ModelAndView dashBoard(HttpServletRequest request, HttpServletResponse response) throws Exception {
System.out.println("hitting the avigation controller now - loading the dashboard");
return new ModelAndView("dashboard", "msg","Testing the model and view");
}
同一配置文件中的此条目有效并且所有方法都被适当调用:
<bean name="chartController" class="ChartController">
<property name="methodNameResolver">
<bean class="org.springframework.web.servlet.mvc.multiaction.PropertiesMethodNameResolver">
<property name="mappings">
<props>
<prop key="/chart/barChart">barChart</prop>
<prop key="/chart/json">handleChartJsonRPC</prop>
</props>
</property>
</bean>
</property>
</bean>
答案 0 :(得分:0)
它可能还与ControllerClassNameHandlerMapping
有关,它希望控制器映射到类似/navigation/dashboard
的网址