今天,在做一个很简单的链接转(<a href="browseCatalog.action">浏览</>)向到其他页面时,出现了一个问题让我头疼了好久。最后在网上查资料终于解决了,在这和大家分享一下。
我在struts.xml文件中做的是如下配置,并需要对addBookCatalog进行必要的字段不能为空验证
<action name="addBookCatalog" class="BookCatalogAction" method="addBookCatalog">
<result name="input">addBookCatalog.jsp</result>
<result>bookCatalog_list.jsp</result>
</action>
<action name="browseCatalog" class="BookCatalogAction" method="browseCatalog">
<result name="success">bookCatalog_list.jsp</result>
</action>
刚开始我是对BookCatalogAction配置了BookCatalogAction-validation.xml验证,于是在做链接是(<a href="browseCatalog.action">浏览</>)总是报No result defined for action or result错。原因是我配置的是BookCatalogAction-validation.xml验证,在进入action之前要进行字段的验证,如果验证失败,页面就会转入到input result指定的页面,但在browseCatalog中我没有配置input result。其实,对于browseCatalog并须要验证,只需要将BookCatalogAction-validation.xml验证改为BookCatalogAction-addBookCatalog-validation.xml即可
总结:此次的问题主要在于对validation处理机制的理解。