2

我正在开发一个小型 Struts 1.2.4 电话簿应用程序。该应用程序在单个 JSP 中包含用于添加、搜索和编辑/删除数据的表单。我的问题在于显示在执行通配符搜索时获得的 ResultSet。这是程序的流程:

  1. 用户输入搜索字符串。

  2. 请求被传递给 DispatchAction 类的 search() 方法,该方法又调用“模型”类的 searchContact(String name , HttpServletRequest request) 方法。

  3. 该方法使用 PreparedStatement 对 DB 执行 SELECT 查询,该语句返回一个结果集,其值放在 ArrayList<PhoneBook> 中。PhoneBook 类是一个 JavaBean,它有两个字段 'c_name' 和 'p_num' ,带有 getter 和 setter。

  4. logic:bean 和 logic:iterate 标签用于打印 JSP 中 ArrayList<PhoneBook> 的内容。

在 JSP 中:

    <html:form action="/PhoneBookAction.do" method="post"  >

        <table>
            <tr>
                <td>Name</td>
                <td><html:text property="name"/></td>
            </tr>
        </table>
        <br>
        <html:submit property="method" value="Search"/>

        <br><br><br>

        <table align="center" border="2" bordercolor="royal blue">
            <thead>
                <tr>
                    <td><b> Select </b></td>
                    <td><b> Name </b></td>
                    <td><b> Phone Number </b></td>
                </tr>
            </thead>

            <logic:iterate id="search_resId" name="phonebookform" property="search_res">
                <tr>
                    <td> <bean:write name="search_resId" property="c_name" /> </td>
                    <td> <bean:write name="search_resId" property="p_num" /> </td>
                </tr>
            </logic:iterate>
        </table>

    </html:form>

这通常会给出“在任何范围内找不到 Bean”错误,或者什么也不打印。我尝试了一些类似线程中建议的修复程序,但它们似乎都不起作用。期待解决方案。谢谢你。

4

0 回答 0