| Autor |
Mensagem |
|
|
Eu já tentei rodar em RESTORE_VIEW, UPDATE_MODEL_VALUES e até em RENDER_RESPONSE... e obtive os mesmo resultados.
Pensei nisso que você disse sobre iteração (já que a table faz iteração sobre uma coleção para criar as colunas). Porém no caso da table todas as iterações ficam armazenadas na árvore de componentes,gerando nós para CoreColumns e cada um destes criando filhos com CoreOutputText por exemplo. Tanto é, que com CommandLink no lugar de OutputText, eu recupero todos os valores. O problema é que em alguns casos não poderei usar command, teria que ser texto simples mesmo.
Segue abaixo a codificação da classe.
OBS: Se trata da classe responsável pelo ExcelExport do SandBox do Tomahawk, modificada para funcionar com ADF Faces.
Abraços
|
 |
|
|
Tentei direto tbm e nada !
ot.getValueBinding("value").getValue()
PS: ot é meu HtmlOutputText
|
 |
|
|
O interessante que isso acontece no PhaseListener apenas para as expressões que uso variáveis definidas na página, como bundle e var da table...
|
 |
|
|
Urubatan, cara não sei o q esta acontecendo mas não funcionou.
Fiz da seguinte forma:
Mas obtive NULL em value.
O interessante é que depurei o 'ot.getValueBinding("value").toString()', aquilo me devolve a expressão em literal 'value=#{lista.nome}', corretamente.
Mas alguma sugestão?
Valew pela força
|
 |
|
|
getValueBinding retorna a string literal como é escrita no value da JSP:
"#{linha.nome}"
|
 |
|
|
DETALHE:
Acabei de perceber que só tenho este comportamento em outputText.
Nas linhas das tabelas onde utilizo commandLink e recupero o valor com getText, eu tenho tudo normal. O problema é no outputtext.getValue.
Ja tentei com HtmlOutputText e com a implementação CoreOutpuText do ADF ... e fiquei com o mesmo problema.
O q pode ser?
|
 |
|
|
Estou tendo problemas para recuperar alguns valores em uma classe que implementa PhaseListener.
Minha intenção é trabalhar com alguns valores retornados de uma af:table (ADF).
Porém os títulos das colunas que é preechido na página com ResourceBundle (f:loadbundle), no outputtext correspondente é retornado null em seu getValue, no phaseListener.
Se faço um teste e coloco como atributo para o título da coluna uma propriedade de um MB (ex: #{usrMB.nome}), eu tenho no "getValue" seu valor correto no phaseListener.
A mesma coisas acontece com o "var" da table, que realiza a iteração nas linhas da tabela. Ao tentar o valor de uma das linhas eu tenho null (Ex: #{var.nome}). Porém se eu coloco um valor que não é o da iteração e sim um valor fixo (ou de um atributo de um MB), ele é lido corretamente.
Resumindo, não consigo recuperar no PhaseListener valores de variáveis definidas na própria página, como as definidas em f:loadbundle e nem em definidas em "var" na iteração de uma table.
Esse comportamento é normal?
Como recuperar no PhaseListener um CoreOutputText quando na página seu value esta adicionado utilizando variáveis que só existem na página? (#bundle.meuTexto, #var.minhaLinha, etc).
OBS: Em getValueBinding do Componente aparece por exemplo "#bundle.meuTexto" .. mas no getValue null.
Obrigado
|
 |
|
|
Mas isso o MyEclipse ja fez plentz:
http://www.myeclipseide.com/ContentExpress-display-ceid-77.html
É só abrir a mão um pouquinho hehe.
|
 |
|
|
Se você utiliza JSF esqueça MuEclipse e use Exadel. Usei durante 3 anos MyEclipse e agora estou com o Exadel....
... incomparável!
|
 |
|
|
Apenas para clarear minhas idéias... o grande "barato do Spring" não é criar independencia do código fonte no instanciamento dos objetos para as interfaces, com o uso de injeção de dependencia em seus arquivos XMLs?
Com as annotations, para alterar uma injeção eu não teria que alterar novamente o fonte das classes e compilar novamente?Sendo assim qual a vantagem em utilizar Spring Annotation em vez de factorys tradicionais harded code para as interfaces?
|
 |
|
|
Olá lista...
Gostaria de que a mensagem de meus campos obrigatórios não fossem
exibidos com a tag h:message a frente do campo, mas sim agrupados junto
de h:messages (com "s" no final).
Porém no bundle, preenchendo javax.faces.component.UIInput.REQUIRED, eu
consigo apenas informar que o campo é obrigatório, mas não qual é este
campo (e ja que aparece agrupado, fica um monte de "campo requerido",
mas sem a identificação de qual campo é).
Como posso passar argumentos do tipo {0} para identificar o required?
valew povo
|
 |
|
|
Implementei agora o toString, mas tbm não foi:
public String toString() {
return getIdParam.toString();
}
O interessante é que coloco breakPoint no toString e no equals do pojo, mas o fluxo não esta passando por eles.
O engraçado é que ele não da erro fo getAsObjetc(), inclusive retorna o objeto certinho do banco -- (engraçado não, melhor dizer o desgraçado, argh!)
o que sera hein?!
[]s
|
 |
|
|
Olá Toninho,
O toString eu não sobrescrevi não. Não sabia que a fase de validação utilizava este método do POJO.
Como que ficaria meu toString neste caso?
Obrigado
[]´s
|
 |
|
|
PS: Fui eu que add o comentario do arquivo zip com erro (mas sem erro, hehe), de sua apresentação no webdev em seu blog (que descompactei com o gzip). O material me ajudou bastante. Valew
|
 |
|
|
Que mal humor é este Urubatan?
Minha segunda pergunta foi por pensar que talvez alguém não tivesse passado por isso.
O fato é que já faz alguns dias que tento achar a solução pra esse problema e não consigo respostas. Procurei na web e o maximo que consegui foi alguns casos onde o desenvolvendor não tinha sobrescrito o método equals do model, mas nesse caso eu fiz isso, mas tbm não funcionou:
Se você poder me ajudar, estarei muito agredecido.
Desculpe se pareci arrogante.
[]s
|
 |
|
|