Can you show us the code of your formBean? It's most likely for the problem
to be in it.

2006/6/27, David Friedman <[EMAIL PROTECTED]>:

Do you have a more complete stack trace and more detail in any error logs?

-----Original Message-----
From: Caroline Jen [mailto:[EMAIL PROTECTED]
Sent: Monday, June 26, 2006 8:22 PM
To: user@struts.apache.org
Subject: One JSP with an Action Link and a Form


I have a JSP and there are a link (it invokes an
action) and a form (the form has a submit button).  My
struts-config.xml looks like:

[code]
               <action path="/admin/findUsers"
type=".......admin.action.FindUsersAction"
                                       name="FindUsersForm"
                                       input="/admin/maintainuser">
                       <forward name="default"
path="admin.foundusers.default" />
               </action>

               <action path="/admin/selectUsers"
type=".......admin.action.SelectUsersAction"
                                       name="SelectUsersForm"

input="/admin/maintainuser">
                       <forward name="default"
path="admin.selectedusers.default" />
               </action>
[/code]

My JSP works well if the JSP has only the link, which
invokes an action.  My JSP also works well if the JSP
has only the form, which has a submit button.
But, if I put both the link and the form in the JSP, I
have the runtime JSP error: "Not getter method for
property selectedUsers[0].selected of bean
org.apache.struts.taglib.html.BEAN"

I do not understand the error message because I have
all the required getter methods and those getter
methods work if I do not put both the action link and
the form within this one single JSP.

I coded the JSP using the JSTL and html-el tags.
Here is my code (the code is also in the attachment):
[code]
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-html-el"
prefix="html-el"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
<%@ taglib uri="/tags/struts-tiles" prefix="tiles" %>
<%@ taglib uri="/tags/struts-logic" prefix="logic" %>
<%@ taglib uri="/tags/core" prefix="c" %>
<%@ taglib uri="/tags/targeting-foundation"
prefix="ecustoms"%>
<%@ page import="java.util.List"%>
<%@ page
import="gov.cbp.ace.st.tf.common.pojo.user.User" %>

<html:html>
<HEAD>
<link rel="stylesheet" type="text/css"
href="<html:rewrite page='/theme/Master.css'/>">
<TITLE>User Maintenance Home Page</TITLE>
</HEAD>

<BODY>
<html-el:form action="/admin/findUsers.do">
       <table width="95%" border="0" align="center">
               <tr>
                       <td colspan="6" align="center">
                               <html-el:submit
accesskey="S">Search</html-el:submit>
                       </td>
               </tr>
               <tr>
                       <td colspan="6" align="center">
                               <br>
                       </td>
               </tr>
       </table>

       <!-- Create a variable in scope called userRows from
the Users object -->
       <c:set var="userRows" value="${requestScope.Users}"
/>

       <c:choose>
               <c:when test="${not empty userRows}">
                       <table width="95%" border="0" cellspacing="1"
cellpadding="3" align="center" >
                               <tr>
                                       <td class="adminHeader"><span
class="dataHeader">Select</span></td>
                                       <td class="adminHeader"><span
class="dataHeader">Hash ID</span></td>
                                       <td class="adminHeader"><span
class="dataHeader">First Name</span></td>
                                       <td class="adminHeader"><span
class="dataHeader">Last Name</span></td>
                                       <td class="adminHeader"><span
class="dataHeader">Creation Date</span></td>
                                       <td class="adminHeader"><span
class="dataHeader">Modification Date</span></td>
                               </tr>

                               <!-- create a "user" object for each
element in
the userRows -->
                               <c:forEach var="user" items="${userRows}"
varStatus="idx">

                                       <c:choose>
                                               <c:when test="${(
idx.count+1 )%2==0}">
                                                       <tr
class="contentCell1">
                                               </c:when>
                                               <c:otherwise>
                                                       <tr
class="contentCell2">
                                               </c:otherwise>
                                       </c:choose>
                                                                       <td
align="center">

<span class="dataContent">

<html-el:checkbox
property="selectedUsers[${idx.index}].selected" />

<html-el:hidden
property="selectedUsers[${idx.index}].id"
value="${user.id}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].userIDCode"
value="${user.userIDCode}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].createdByUserID"
value="${user.createdByUserID}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].updatedByUserID"
value="${user.updatedByUserID}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].firstName"
value="${user.firstName}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].lastName"
value="${user.lastName}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].createdDate"
value="${user.createdDate}"/>

<html-el:hidden
property="selectedUsers[${idx.index}].updatedDate"
value="${user.updatedDate}"/>

</span>

</td>
                                                       <c:choose>
                                                               <c:when
test="${not empty
user.createdByUserID}">
                                                                       <td
align="center"><span
class="dataContent"><c:out
value="${user.createdByUserID}" /></span></td>
                                                               </c:when>

<c:otherwise>
                                                                       <td
align="center"><span
class="dataContent"></span></td>

</c:otherwise>
                                                       </c:choose>
                                                       <c:choose>
                                                               <c:when
test="${not empty user.firstName}">
                                                                       <td
align="center"><span
class="dataContent"><c:out value="${user.firstName}"
/></span></td>
                                                               </c:when>

<c:otherwise>
                                                                       <td
align="center"><span
class="dataContent"></span></td>

</c:otherwise>
                                                       </c:choose>
                                                       <c:choose>
                                                               <c:when
test="${not empty user.lastName}">
                                                                       <td
align="center"><span
class="dataContent"><c:out value="${user.lastName}"
/></span></td>
                                                               </c:when>

<c:otherwise>
                                                                       <td
align="center"><span
class="dataContent"></span></td>

</c:otherwise>
                                                       </c:choose>
                                                       <c:choose>
                                                               <c:when
test="${not empty user.createdDate}">
                                                                       <td
align="center"><span
class="dataContent"><c:out value="${user.createdDate}"
/></span></td>
                                                               </c:when>

<c:otherwise>
                                                                       <td
align="center"><span
class="dataContent"></span></td>

</c:otherwise>
                                                       </c:choose>
                                                       <c:choose>
                                                               <c:when
test="${not empty user.updatedDate}">
                                                                       <td
align="center"><span
class="dataContent"><c:out value="${user.updatedDate}"
/></span></td>
                                                               </c:when>

<c:otherwise>
                                                                       <td
align="center"><span
class="dataContent"></span></td>

</c:otherwise>
                                                       </c:choose>
                                                       </tr>
                               </c:forEach>

                               <tr>
                                       <td colspan="6">
                                               <br>
                                       </td>
                               </tr>
                               <tr>
                                       <td colspan="6" align="left">
                                               <html:link
action="/admin/selectUsers.do">Edit Selected
Users</html:link>
                                       </td>
                               </tr>
                       </table>

                       <br>
                       <br>
                       <!-- Pagination -->
                       <center><ecustoms:pagenav
hrefName="pagenavHref"/></center>

               </c:when>

               <c:otherwise>
                       <center><H1>No User Found.</H1></center>
               </c:otherwise>
       </c:choose>

</html-el:form>

</body>
</html:html>
[/code]

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around
http://mail.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
T. Wong

Reply via email to