Pessoal, tenho uma tag em JSF 1.1 que recupera informações da tela atraves da expresão el que esta no jsp
//Codigo no JSP que chama a tag
<pf:paramFormat
message="#{messageBundle.tooltip_nome}"
value="#{managedBean.atributo}" type=“title” />
//Codigo da classe de TAG
if (UIComponentTag.isValueReference(tokenValue)) { //Identifica se é uam epressão que precisa ser traduzida
ValueBinding bindingValue = app.createValueBinding(tokenValue);
elValueTraduzido.append(bindingValue.getValue(context));
}
por exemplo se eu faço app.createValueBinding("#{managedBean.atributo}"), funciona perfeitamente, ele recupera o valor que está exibido na tela e tudo bem, porem não sei como recuperar atraves da EL quando o item estiver em um dataList ou dataTable
No datalist por exemplo eu tenho :
<t:dataList id="lista" value="#{managedBean.lista}" var="item" rowIndexVar="rowIndex" >
Se eu fizer app.createValueBinding("#{item.campoDaLista}"), retorna null na classe da tag.
pra executar a tag uso o codigo abaixo
//Codigo no JSP que chama a tag
<pf:paramFormat
message="#{messageBundle.tooltip_item_lista}"
value="#{item.dtPeriodo}" type="title" />
Como passar o valor de uma ceula do datalist para uma classe tag ?
DEcobri que se ao inves de passar a Expressão #{item.dtPeriodo} eu passar #{managedBean.lista[1].nomeDoCompo} o valor chega na Classe de tag que eu criei e ai eu consigo recuperar o dado. O problema é que durante o carregamento da página não cosigo criar o valor [1] em sequencia. Fica fixo.
Preciso entender o porque o #{item…} nem o rowIndex do dataList chegam na classe Tag.
Decobri que se ao inves de passar a Expressão #{item.dtPeriodo} eu passar #{managedBean.lista[1].nomeDoCompo} o valor chega na Classe de tag que eu criei e ai eu consigo recuperar o dado. O problema é que durante o carregamento da página não cosigo criar o valor [1] em sequencia. Fica fixo.
Preciso entender o porque o #{item…} nem o rowIndex do dataList chegam na classe Tag.
Decobri que se ao inves de passar a Expressão #{item.dtPeriodo} eu passar #{managedBean.lista[1].nomeDoCompo} o valor chega na Classe de tag que eu criei e ai eu consigo recuperar o dado. O problema é que durante o carregamento da página não cosigo criar o valor [1] em sequencia. Fica fixo.
Preciso entender o porque o #{item…} nem o rowIndex do dataList chegam na classe Tag.
A TAG não consegue recueprar as variaveis item e rowindex por causa do ciclo de vida do componente.
Se no conversor, validador ou componente eu procurar estes valores eu consigo recupera-los.