You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Nadja Senoucci <se...@21st.de> on 2003/06/10 16:42:47 UTC

Another problem with logic:iterate

Hello,

this seems to be my day of problems. ;) Anyway, I have this code in my .jsp:

<logic:present name="fields">
<bean:define name="fields" scope="session" id="fields"
type="java.util.ArrayList"/>
<bean:define name="params" scope="session" id="fields"
type="java.util.ArrayList"/>
<logic:iterate id="f" name="fields">
<logic:iterate id="p" name="params">
<tr>
<td><bean:write name="f" property="value"/></td>
<td><bean:write name="p" property="value"/></td>
</tr>
</logic:iterate>
</logic:iterate>
</logic:present>

And I keep getting the following error:

Generated servlet error:
suchen$jsp.java:231: Variable 'fields' is already defined in this method.
java.util.ArrayList fields = null;

But I am not declaring that variable anywhere else in my .jsp... All I am
doing with fields is that I check if it is there and if it is I want to get
access to it, so I do a bean:define and read it from my session...

In case you want to see the whole .jsp here it comes:

<%@ page language="java" import="de.zmnh.user.User, java.util.Collection" %>
<%@ taglib uri="/struts-logic" prefix="logic" %>
<%@ taglib uri="/struts-tiles" prefix="tiles" %>
<%@ taglib uri="/struts-html" prefix="html" %>
<%@ taglib uri="/struts-bean" prefix="bean" %>
<font color="#CC0000" size="2" face="Arial, Helvetica,
sans-serif"><html:errors/></font>
<html:form action="/suchen">
<table width="75%" border="0" cellpadding="1" cellspacing="0"
bgcolor="#000066">  <tr>
    <td>
	  <table width="100%" border="0" cellpadding="2" cellspacing="1">
        <tr bgcolor="#FFFFFF">
          <td colspan="4"><h3><font size="2" face="Arial, Helvetica,
sans-serif"><bean:message key="form.suchen.title"/></font></h3></td>
        </tr>
		<logic:present name="fields">
		<bean:define name="fields" scope="session" id="fields"
type="java.util.ArrayList"/>
		<bean:define name="params" scope="session" id="fields"
type="java.util.ArrayList"/>
		<logic:iterate id="f" name="fields">
		<logic:iterate id="p" name="params">
		<tr>
		 <td><bean:write name="f" property="value"/></td>
		 <td><bean:write name="p" property="value"/></td>
		</tr>
		</logic:iterate>
		</logic:iterate>
		</logic:present>
        <tr bgcolor="#FFFFFF">
          <td colspan="2"><html:text property="field"/></td>
          <td colspan="2"><html:text property="parameter"/></td>
        </tr>
        <tr bgcolor="#FFFFFF">
          <td align="right">  </td>
          <td align="right"><html:submit property="cancel"> <bean:message
key="form.suchen.button.cancel"/>
            </html:submit></td>
          <td align="right"><html:submit property="mehr"> <bean:message
key="form.suchen.button.mehr"/>
            </html:submit></td>
          <td align="right"><html:submit property="submit"> <bean:message
key="form.suchen.button.submit"/>
            </html:submit></td>
        </tr>
      </table>
	</td>
  </tr>
</table>
</html:form>

What am I doing wrong?

Greetings,
Nadja



---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


Re: Another problem with logic:iterate

Posted by James Mitchell <jm...@apache.org>.
On Tuesday 10 June 2003 10:42, Nadja Senoucci wrote:
> Hello,
>
> this seems to be my day of problems. ;) Anyway, I have this code in my
> .jsp:
>
> <logic:present name="fields">
> <bean:define name="fields" scope="session" id="fields"
                     ^^^^^^                      ^^^^^^
Don't do that...



> type="java.util.ArrayList"/>
> <bean:define name="params" scope="session" id="fields"
> type="java.util.ArrayList"/>
> <logic:iterate id="f" name="fields">
> <logic:iterate id="p" name="params">
> <tr>
> <td><bean:write name="f" property="value"/></td>
> <td><bean:write name="p" property="value"/></td>
> </tr>
> </logic:iterate>
> </logic:iterate>
> </logic:present>
>
> And I keep getting the following error:
>
> Generated servlet error:
> suchen$jsp.java:231: Variable 'fields' is already defined in this method.
> java.util.ArrayList fields = null;
>
> But I am not declaring that variable anywhere else in my .jsp... All I am
> doing with fields is that I check if it is there and if it is I want to get
> access to it, so I do a bean:define and read it from my session...
>
> In case you want to see the whole .jsp here it comes:
>
> <%@ page language="java" import="de.zmnh.user.User, java.util.Collection"
> %> <%@ taglib uri="/struts-logic" prefix="logic" %>
> <%@ taglib uri="/struts-tiles" prefix="tiles" %>
> <%@ taglib uri="/struts-html" prefix="html" %>
> <%@ taglib uri="/struts-bean" prefix="bean" %>
> <font color="#CC0000" size="2" face="Arial, Helvetica,
> sans-serif"><html:errors/></font>
> <html:form action="/suchen">
> <table width="75%" border="0" cellpadding="1" cellspacing="0"
> bgcolor="#000066">  <tr>
>     <td>
> 	  <table width="100%" border="0" cellpadding="2" cellspacing="1">
>         <tr bgcolor="#FFFFFF">
>           <td colspan="4"><h3><font size="2" face="Arial, Helvetica,
> sans-serif"><bean:message key="form.suchen.title"/></font></h3></td>
>         </tr>
> 		<logic:present name="fields">
> 		<bean:define name="fields" scope="session" id="fields"
> type="java.util.ArrayList"/>
> 		<bean:define name="params" scope="session" id="fields"
> type="java.util.ArrayList"/>
> 		<logic:iterate id="f" name="fields">
> 		<logic:iterate id="p" name="params">
> 		<tr>
> 		 <td><bean:write name="f" property="value"/></td>
> 		 <td><bean:write name="p" property="value"/></td>
> 		</tr>
> 		</logic:iterate>
> 		</logic:iterate>
> 		</logic:present>
>         <tr bgcolor="#FFFFFF">
>           <td colspan="2"><html:text property="field"/></td>
>           <td colspan="2"><html:text property="parameter"/></td>
>         </tr>
>         <tr bgcolor="#FFFFFF">
>           <td align="right">  </td>
>           <td align="right"><html:submit property="cancel"> <bean:message
> key="form.suchen.button.cancel"/>
>             </html:submit></td>
>           <td align="right"><html:submit property="mehr"> <bean:message
> key="form.suchen.button.mehr"/>
>             </html:submit></td>
>           <td align="right"><html:submit property="submit"> <bean:message
> key="form.suchen.button.submit"/>
>             </html:submit></td>
>         </tr>
>       </table>
> 	</td>
>   </tr>
> </table>
> </html:form>
>
> What am I doing wrong?
>
> Greetings,
> Nadja
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: struts-user-help@jakarta.apache.org

-- 
James Mitchell
Software Developer/Struts Evangelist
http://www.struts-atlanta.org
770-822-3359
AIM:jmitchtx



---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org