我有一个名为diary.jsp的jsp页面,其中与之关联的动作类称为DiaryAction,在此类中,我使用populate方法预填充字段。当我第一次使用URL中的PopulateDiary.action访问页面时,这正如预期的那样工作。
<li><a href="populateDiary.action">Profile</a></li>
然而,作为此页面的一部分,我有一个表单,用户可以在其中添加新的日记条目。在提交此表单时,我呼吁采取以下行动:
<action name="addDiaryEntry" method="addDiaryEntry"
class="spirit.of.community.action.classes.DiaryAction">
<result name="success">/diary.jsp</result>
</action>
这是调用正确的代码来添加新的日记条目。但是,在这个动作方法的成功之后,我想再次显示相同的页面,即diary.jsp和填充的数据(包括更新的条目)。我已将此行放在我的diary.jsp页面中,希望这可以实现我的目标:
<s:action name="populateDiary"></s:action>
现在当diary.jsp加载时,我可以看到正在调用的populate方法。但该页面未填充任何数据。如果它具有任何重要性,提交表单时的URL是 - “/ addDiaryEntry.action”。任何人都可以建议我如何调用我的addEvent方法添加新条目,然后重新加载包含更新数据的页面?任何建议表示赞赏!提前谢谢!
答案 0 :(得分:1)
你有几种方法可以实现这一目标,而这里是
addDiaryEntry
操作添加日记实例时,您可以创建所有条目的列表,并可以使用迭代器按照您的方式显示数据。<s:action name="populateDiary" executeResult="true">
。执行结果判断是否应该执行/渲染此操作的结果(可能是视图)。
有关详细信息,请参阅Execute action