Jakarta ee Apache Struts和DynaValidator ActionForm位于同一页面上
我在ApacheStruts中使用了两个动作,一个是DisplayAddPerson,它转发给AddPerson动作,AddPerson动作使用DynaValidatorActionForm显示表单页面,在提交时,数据被持久化,并调用ShowPerson动作Jakarta ee Apache Struts和DynaValidator ActionForm位于同一页面上,jakarta-ee,struts,struts-validation,Jakarta Ee,Struts,Struts Validation,我在ApacheStruts中使用了两个动作,一个是DisplayAddPerson,它转发给AddPerson动作,AddPerson动作使用DynaValidatorActionForm显示表单页面,在提交时,数据被持久化,并调用ShowPerson动作 <action path="/AddPerson" name="AddPersonForm" scope="request" type="proj.actions.ManagePerson"
<action path="/AddPerson" name="AddPersonForm" scope="request"
type="proj.actions.ManagePerson"
input="/DisplayAddPerson.do"
parameter="create">
<forward name="success" path="/ShowPersons.do" />
<forward name="unauthorized" path="/Unautorized.do" />
</action>
<action path="/DisplayAddPerson" type="proj.actions.ManagePerson"
parameter="displayAddPerson" validate="false">
<forward name="success" path="AddPerson" />
<forward name="unauthorized" path="/Unautorized.do" />
</action>
上面的操作很好,但是DisplayAddPerson操作没有用,因为它只是指向ManagerPerson.java中的函数DisplayAddPerson,该函数将转发给AddPerson
现在我尝试删除DisplayAddPerson操作,只使用AddPerson操作来显示表单并在提交时调用自己
但是,在上述情况下,不会显示表单,并且调用ManagePerson.create()时不会显示任何表单。
如何让AddPerson操作首先显示AddPersonForm,然后在提交调用时创建()方法,并在成功时重定向到ShowPerson
谢谢这只是一个值得关注的问题,为什么不使用Struts2?我正在修改一个apache struts 1项目(我将在第二阶段过渡到struts 2。)。。