espressione Struts OGNL per valutare il risultato dell'espressione
Domanda
Questo sta per essere un po 'difficile da spiegare. Sto cercando di scrivere un tag per componentise una serie di campi di indirizzo, ma sto avendo problemi a lavorare fuori l'espressione OGNL.
Utilizzo previsto:
mappe member.address a un oggetto Indirizzo (niente di troppo mannaia).
Il mio tag (versione più semplice):
<%@taglib prefix="s" uri="/struts-tags" %>
<%@attribute name="name" required="true" rtexprvalue="true" type="java.lang.String" %>
<s:push value="%{#attr.name}">
Address line 1:
<s:property value="line1"/>
</s:push>
Credo che il problema è che <s:push value="%{#attr.name}"/>
non è in realtà spingendo il risultato di member.address nello stack è solo spingendo una stringa di valore 'member.address' invece.
Soluzione
Un po 'più di ricerca e di un lungo periodo di tempo a fissare il OGNL documentazione risultati nella seguente:
<%@taglib prefix="s" uri="/struts-tags" %>
<%@attribute name="name" required="true" rtexprvalue="true" type="java.lang.String" %>
<s:push value="%{(#attr.name)(#attr)}">
Address line 1:
<s:property value="line1"/>
</s:push>
Sembra todo il trucco.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow