Busca do t:selectOneRadio dentro de t:dataTable dinâmico

98 views
Skip to first unread message

Saulo Achkar

unread,
Aug 13, 2009, 10:50:47 AM8/13/09
to jav...@googlegroups.com
Caros, segue meu problema, caso alguém tenha uma solução:

Utilizo um t:dataTable dinâmico com um t:selectOneRadio conforme este exemplo.

Porém, neste exemplo ele faz referência de dentro do dataTable ao selectOneRadio utilizando esta tag:

<t:radio for=":myform:buttons" index="#{index}" />

O artigo inclusive menciona este detalhe: "Notice: The use of the id attribute in <h:form>, <t:selectOneRadio>, and <t:radio>"

Porém, desejo utilizar este t:dataTable em uma página que é uma tag, através do recurso de taglib. E o form pode ter variados nomes, já que a página que utiliza esta tag é quem possui o form.

Fazer a chamada utilizando for="buttons" resulta em erro, pois o método utilizado é findComponent e o componente não é encontrado devido ao funcionamento do algoritmo.

A minha dúvida é se existe alguma maneira de encontrar o componente "buttons", neste caso, sem a necessidade de se saber o nome do form.

Agradeço desde já!

Abraço,

---
Saulo Achkar
Google Talk: saulo....@gmail.com

Rafael Medeiros

unread,
Aug 13, 2009, 11:13:49 AM8/13/09
to jav...@googlegroups.com
para que vc tenha um nome fixo no radio, vc pode utilizar o

forceId="true" forceIdIndex="false"
isso resolve o problema.
pois vc cada radio vai passar a ter o seu id com seu valor como no html.
id = radio e forceIdIndex="true"
radio:[1] ...[2]
quando forceIdIndex="false"
ele apenas deixa o id.

Acredito que seja isso e assim vc não vai precisar se preocupar com o form. Se eu não tiver entendi o que vc queria manda ae de novo.



Atenciosamente,

Rafael Nunes
I'm free - Linux
http://www.linkedin.com/in/mederafael


2009/8/13 Saulo Achkar <saulo....@gmail.com>

Saulo Achkar

unread,
Aug 13, 2009, 11:34:32 AM8/13/09
to jav...@googlegroups.com
Ih, cara, não é bem isso.

Eu não quero nome fixo no radio. Quero que o radio conheça o nome (id) do selectOneRadio de dentro do dataTable.

Valeu!

---
Saulo Achkar
Google Talk: saulo....@gmail.com


2009/8/13 Rafael Medeiros <meder...@gmail.com>

Bruno Garcia

unread,
Aug 13, 2009, 1:03:04 PM8/13/09
to jav...@googlegroups.com
Cara, eu coloquei o <t:selectOneRadio> dentro do <rich:dataTable>. Eu fiz parecido com o que você quer usando <rich:dataTable> mesmo com <t:selectOneRadio> e <t:radio>. Segue abaixo o exemplo:

<rich:dataTable value="#{seuBean.dataList}" var="row" rowKeyVar="index">
                            <f:facet name="header">
                                <rich:columnGroup>
                                    <rich:column>
                                        <h:outputText value="Radios" />
                                        <t:selectOneRadio id="buttons" layout="spread" value="#{seuBean.valorButton}"> 
                                            <t:selectItems var="item" value="#{seuBean.selectList}" itemValue="#{item.valor}" itemLabel=""/>
                                        </t:selectOneRadio>
                                    </rich:column>
                                </rich:columnGroup>
                            </f:facet>
                            <rich:column>
                                <t:radio for="buttons" index="#{index}" />
                            </rich:column>
</rich:dataTable>

2009/8/13 Saulo Achkar <saulo....@gmail.com>



--
Atenciosamente,

Bruno Garcia Vasconcelos
Desenvolvedor Java
http://ostelematicos.blogspot.com
http://brunovasconcelos.wordpress.com
Reply all
Reply to author
Forward
0 new messages