czw., 14 mar 2019 o 21:38 Prasanth <dbad...@pangburngroup.com> napisał(a):
>
> Sorry if I caused any confusion. This thread was meant to discuss String 
> keys.  I do have forms where I am using numeric keys and they work fine.
>
> I think I found a solution to my problem. Struts seems to expect single 
> quotes for the keys when the key is string. Updated code is shown below. Also 
> I changed my separator to "a" rather than "-".  So
> the two changes I have made are i) change separator to "a" ii) use single 
> quotes around the key when specifying the name for text field.
>
> JSP:
> <s:textfield name="accountAllocation[*'*%{#attr.mapKey}*'*]" size="3" 
> cssClass="inline-input"/>
>
> Resulting HTML:
> <input name="accountAllocation['22419a23543']" size="3" value="50" 
> id="AccountAllocations_accountAllocation_'22419a23543'_" class="inline-input" 
> type="text">

Ok, now we have a clear situation. The "name" attribute is evaluated
as an OGNL expression so in this case everything enclosed will be
parsed and treated as expression, from inner to outer.

Using "%" forces an additional evaluation but enclosing it in a single
quote (') means you expect a String so this expression
'%{#attr.mapKey}' should only return '12345-123', then
"accountAllocation[]" is evaluated as a map with a key (in this case
with a String key).

So using single quotes should do the trick in your case.


Kind regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

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

Reply via email to