【问题标题】:Displaying Data Table And Submiting Form In One Page Struts一页显示数据表并提交表单 Struts
【发布时间】:2012-07-23 18:36:15
【问题描述】:

我是 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 两次。你建议我怎么做?

【问题讨论】:

    标签: spring jsp error-handling struts


    【解决方案1】:

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

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

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

    【讨论】:

    • 是的,您只需将输入属性添加到您的操作标签(输入=“/form/exampleXML.jsp”)。另外,只是一个小建议。您可以使用显示标签来显示列表。它肯定会帮助你很多,而不是迭代标签。 displaytag.org/1.2请注意,我与displaytag没有任何关系
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-13
    • 1970-01-01
    • 2015-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多