Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Java > Struts tag <logic:iterate>

Reply
Thread Tools

Struts tag <logic:iterate>

 
 
Jack_A
Guest
Posts: n/a
 
      05-18-2004
Hello!
I have a problem with struts tag <logic:iterate>

There is a bean TestBean.java contains array of some class (e.g. B)
and class B also contains array of some class (e.g. C)

public class B{
private C[] arrayC;
public B(int n){
arrayC = new C[n];
int j;
for(j = 0;j<n; j++){
arrayC[j] = new C();
}
}
public C[] getArrayC() { return arrayC;}
public C getArrayC(int index) { return arrayC[index];}
}

public class TestBean {
private B[] arrayB;
public TestBean(int n){
arrayB = new B[n];
int j;
for(j = 0;j<n; j++){
arrayB[j] = new B(n);
}
}
public B[] getArrayB() { return arrayB;}
public B getArrayB(int index) { return arrayB[index];}
}

There is some code of jsp page:

<%TestBean testBean = new TestBean(5);
session.setAttribute("testBean", testBean);
%>
<table>
<logic:iterate id="test" name="testBean" property="arrayB"
indexId="i"
scope="session">
<tr>
<td align="right"><html:text name='test'
property="array"/>
<logic:iterate id="test2" name="test"
property="arrayC" indexId="j">
<td align="right"><html:text name='test2'
property="fielsOfClassC"/>
</logic:iterate>
<tr />
</logic:iterate>
</table>

I try to iterate each element of arrayC, which is element of arrayB
(which I try to iterate too) .
But "[ServletException in:/testApp/test.jsp] Cannot create iterator
for this collection'"

Sorry if I wasn't very clear.

Can anyone give me some advice?
 
Reply With Quote
 
 
 
 
Martin
Guest
Posts: n/a
 
      05-19-2004
http://www.velocityreviews.com/forums/(E-Mail Removed) (Jack_A) wrote in message news:<(E-Mail Removed). com>...
> Hello!
> I have a problem with struts tag <logic:iterate>
>
> There is a bean TestBean.java contains array of some class (e.g. B)
> and class B also contains array of some class (e.g. C)
>
> public class B{
> private C[] arrayC;
> public B(int n){
> arrayC = new C[n];
> int j;
> for(j = 0;j<n; j++){
> arrayC[j] = new C();
> }
> }
> public C[] getArrayC() { return arrayC;}
> public C getArrayC(int index) { return arrayC[index];}
> }
>
> public class TestBean {
> private B[] arrayB;
> public TestBean(int n){
> arrayB = new B[n];
> int j;
> for(j = 0;j<n; j++){
> arrayB[j] = new B(n);
> }
> }
> public B[] getArrayB() { return arrayB;}
> public B getArrayB(int index) { return arrayB[index];}
> }
>
> There is some code of jsp page:
>
> <%TestBean testBean = new TestBean(5);
> session.setAttribute("testBean", testBean);
> %>
> <table>
> <logic:iterate id="test" name="testBean" property="arrayB"
> indexId="i"
> scope="session">
> <tr>
> <td align="right"><html:text name='test'
> property="array"/>
> <logic:iterate id="test2" name="test"
> property="arrayC" indexId="j">
> <td align="right"><html:text name='test2'
> property="fielsOfClassC"/>
> </logic:iterate>
> <tr />
> </logic:iterate>
> </table>
>
> I try to iterate each element of arrayC, which is element of arrayB
> (which I try to iterate too) .
> But "[ServletException in:/testApp/test.jsp] Cannot create iterator
> for this collection'"
>
> Sorry if I wasn't very clear.
>
> Can anyone give me some advice?


I quickly simulated your example, and I didn't get this "cannot create
iterator..."-message. First, I received other errors: I had to import
the B- and C-class, then I got "no getter method...". So I specified
the property-type to iterate over:

<logic:iterate id="test" name="testBean" property="arrayB"
scope="request" type="B">
<tr>
<td>Row...</td>
<logic:iterate id="test2" name="test" property="arrayC" type="C">
<td align="right"><bean:write name="test2"
property="ceProperty"/>
</logic:iterate>
<tr />
</logic:iterate>

That's it. I had a simple String-variable "hello" with a getter-method
in C, and voila: a 5x5-matrix filled with hellos.

Try this. If it doesn't work, then post some more details (code of
class C, J2EE-environment, etc).

Good luck!
Martin
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
how do u invoke Tag b's Tag Handler from within Tag a's tag Handler? shruds Java 1 01-27-2006 03:00 AM
Is it safe to point to Internet for locating struts DTD files in struts TLDs and XML files? Katie Wright Java 8 01-07-2005 03:37 PM
Integrate a Struts app with a non-struts app jc1771 Java 0 12-28-2003 06:36 PM
Struts Installation - missing struts.tld??? Jason Us Java 0 10-03-2003 11:36 PM
struts tag inside a tag kishan bisht Java 1 07-08-2003 11:04 PM



Advertisments