Problem with <logic:equal>

hi!

i have a problem with my code.

<logic:iterate id="_contilist" name="contilist">

<logic:iterate id="_continentall" name="continental">

<logic:equal name="_continentall" property="val(GCCSL_SL_ID)" value="_contilist.val(SL_ID)">

<tr class="list">TEXT</tr>

</logic:equal>

</logic:iterate>

</logic:iterate>

TEXT is nerver displayed!

both beans contilist and continental are filled and GCCSL_SL_ID and SL_ID are equal.

is the code correct or is it not allowable that I use _contilist.val(SL_ID) in this equal?

whit greetings

[653 byte] By [pstarka] at [2007-10-3 2:29:02]
# 1

<logic:equal name="_continentall" property="val(GCCSL_SL_ID)" value="_contilist.val(SL_ID)">

Two things here

1 - you can't use parentheses in the property/value tags to indirectly pass a parameter to a method. The property is a String being the property exposed by the bean. So property="name" or property="id" are valid, but property="val(name)" Is not as far as I am aware.

2 - value is currently a String. If you want it to be actually evaluated, try value="<%= _contilist.val(SL_ID) %>"

To me though, this sort of filtering logic should be done in the action. Your JSP should just receive one list to print out.

evnafetsa at 2007-7-14 19:28:02 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...
# 2
thanks
pstarka at 2007-7-14 19:28:02 > top of Java-index,Enterprise & Remote Computing,Web Tier APIs...