0

我是 Struts 的新手,目前我正在使用 struts 1.3 来构建简单的联系人应用程序

我想显示包含来自数据库的联系人列表的数据表,在同一页面中我想创建一个用于创建新联系人的表单,然后将其插入数据库。

我正在使用 Spring bean 和 hibernate 来做数据库操作和逻辑。所以这是我的流程,我的action类会调用spring bean,spring bean会调用dao类进行数据库操作做一些逻辑,然后我的action类会将列表放入名为contactList的请求对象中,然后在jsp文件中使用 logicLiterate 标记对其进行迭代。

显示表格并提交一切正常,但是当我在 ActionForm 中进行验证时,我想显示错误消息,出现错误 500。这是因为 jsp 在请求对象中找不到名为contactList 的属性,因为如果有是 ActionForm 类中的错误,Struts 没有在我的 Action 类中调用该方法,该方法将读取数据库并将其放入请求对象中。我可以尝试在我的 ActionForm 中调用 spring bean,但我担心它不合适,因为如果没有错误,那么我会为相同的工作调用 spring bean 两次。你建议我怎么做?

4

1 回答 1

0

我不好不仔细阅读文档,现在我明白 struts-config.xml 中的操作标记具有“输入”属性,该属性指定如果出现错误必须将请求转发到的物理页面。

在我的例子中,我只需要将输入属性指定为当前路径(例如 /contacts.do 等),以便 Action 类可以执行其 Action 方法。

请注意,此请求是转发请求,而不是重定向。

于 2012-07-26T08:25:57.600 回答