有人能帮助我吗?在Spring MVC中,我收到了错误
1)首先,在 web.xml 中,我使用标准的DispatcherServlet拦截所有* .htm,这里没什么不寻常的,这是为我预先写的:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
2)在 dispatcher-servlet.xml 中,我使用的是 SimpleUrlHandlerMapping ,这也是标准的并预先写好:
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="index.htm">indexController</prop>
</props>
</property>
</bean>
3)同样在 dispatcher-servlet.xml 中,我定义了名为“DetailsFormController”的FormController类,它映射到 details.htm :
<bean name="/details.htm" class="techbooks.web.DetailsFormController"/>
4)类DetailsFormController是表单的FormController。
package techbooks.web;
public class DetailsFormController extends SimpleFormController {
....
}
但是,当我执行资源 /details.htm 时,我收到上述错误。
任何想法都将不胜感激。感谢。
答案 0 :(得分:0)
您可以将bean定义更改为
<bean name="/TechBooks/details. htm" class="techbooks.web.DetailsFormController"/>
或者为TechBooks编写url映射处理程序
答案 1 :(得分:0)
我发现了问题所在。
使用SimpleUrlHandlerMapping时,Controller名称必须是 DetailsController ,而不是DetailsFormController,因此它会自动映射到正确的JSP。