filterBy column

160 views
Skip to first unread message

Weksley Viana

unread,
Apr 25, 2008, 1:43:44 PM4/25/08
to jav...@googlegroups.com
Bem pessoal, to utilizando Richfaces com Facelets.

To tentando usar a propriedade do column filterBy, ta funcionando legal, filtra o meu datatable legal. O problema e que quando utilizao esta propriedade não consigo mais pegar uma linha correta na minha tabela para excluir ou alterar por exemplo, quando clico em qualquer linha, so pega a ultima linha, se eu tirar a propriedade ai funciona normalmente. Gostaria de saber se alguem ja passou por isso ou se pode ser um bug. Dei uma olhada na pagina do Richfaces mas não detectei nada.

Minha jspx

<?xml version="1.0" encoding="ISO-8859-1" ?>

<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:rich="http://richfaces.org/rich">

    <ui:composition template="/jsp/template.jspx">
        <ui:define name="conteudo">
            <a4j:form>
                <table width="100%" align="right">
                    <tr id="lStatus">
                        <td colspan="2" align="right"><a4j:status id="commonstatus"
                            startText="PROCESSANDO ..." /></td>
                    </tr>
                    <tr id="lTitulo">
                        <td class="lTitulo" width="90%">
                            Assunto
                        </td>
                        <td align="right" width="10%"><h:outputLink style="float:right;"
                            value="javascript:Richfaces.showModalPanel('mpFormulario',{width:500, top:50})">
                            <h:graphicImage url="/imagens/icones/novo.png" border="0" />
                            <rich:toolTip>
                                <span style="white-space: nowrapcolor :                   #000;">
                                Novo Assunto. </span>
                            </rich:toolTip>
                        </h:outputLink></td>
                    </tr>
                    <tr id="lMensagens">
                        <td colspan="2"><rich:messages passedLabel="" layout="list">
                            <f:facet name="header">
                                <h:outputText value="Entered Data Status:"></h:outputText>
                            </f:facet>
                            <f:facet name="passedMarker">
                                <h:graphicImage value="" />
                            </f:facet>
                            <f:facet name="errorMarker">
                                <h:graphicImage value="/imagens/icones/cross.png" />
                            </f:facet>
                        </rich:messages></td>
                    </tr>
                    <tr id="lCorpo">
                        <td colspan="2">
                        <a4j:region>
                            <rich:dataTable styleClass="centralizar" width="400"
                                id="lstAssunto" style="margin: 0 right;" rows="10"
                                columnClasses="col" value="#{cadastroAssunto.todos}"
                                var="decorador">

                                <f:facet name="header">
                                    <rich:columnGroup>
                                        <rich:column width="1%">
                                            <a4j:commandButton alt="Remover Todos" title="Remover Todos"
                                                action="#{ cadastroAssunto.excluirTodos }"
                                                image="/imagens/icones/cross.png"
                                                reRender="lstAssunto, frmAssunto">
                                                <rich:toolTip>
                                                    <span style="white-space: nowrapcolor :             #000;">
                                                    Clicando aqui será possivel excluir todos os registros
                                                    marcados. </span>
                                                </rich:toolTip>
                                            </a4j:commandButton>
                                        </rich:column>
                                        <rich:column width="60%">
                                            <h:outputText styleClass="headerText" value="Descrição" />
                                        </rich:column>

                                        <rich:column width="30%">
                                            <h:outputText styleClass="headerText"
                                                value="Setores que Utilizam este Assunto" />
                                        </rich:column>

                                        <rich:column width="9%">
                                            <h:outputText styleClass="headerText" value="" />
                                        </rich:column>
                                    </rich:columnGroup>
                                </f:facet>
                                <rich:column style="text-align: center;">
                                    <h:selectBooleanCheckbox value="#{ decorador.remover }">
                                        <rich:toolTip>
                                            <span style="white-space: nowrap;"> Marcando varios
                                            será possivel a exclusão de varios registro de uma so vez.
                                            Basta marcar o registro desejados e clicar no X vermelho. </span>
                                        </rich:toolTip>
                                    </h:selectBooleanCheckbox>
                                </rich:column>

                                <rich:column  filterBy="#{decorador.object.descricao}"
                                    filterEvent="onkeyup">
                                    <f:facet name="header">
                                        <h:outputText value="#{decorador.object.descricao}"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{ decorador.object.descricao }" />
                                </rich:column>

                                <rich:column>
                                    <f:facet name="header">
                                        <h:inputText value="#{cadastroAssunto.filtro.setor.descricao}"
                                            id="txtFiltroSetor">
                                            <a4j:support event="onkeyup" reRender="lstAssunto"
                                                ignoreDupResponses="true" requestDelay="700"
                                                focus="txtFiltroSetor" />
                                        </h:inputText>
                                    </f:facet>
                                    <a4j:repeat value="#{decorador.object.setores}" var="setor">
                                        <h:outputText value="#{setor.descricao}" />
                                        <br />
                                    </a4j:repeat>
                                </rich:column>


                                <rich:column style="text-align: center;">                                   
                                    <a4j:commandButton alt="Editar" title="Editar"
                                        action="#{ cadastroAssunto.atualizar }"
                                        image="/imagens/icones/edit.png" onclick="javascript:Richfaces.showModalPanel('mpFormulario',{width:500, top:50})"
                                        reRender="lstAssunto, frmAssunto">
                                        <rich:toolTip>
                                            <span style="white-space: nowrap"> Clicando aqui este
                                            registro será excluido. </span>
                                        </rich:toolTip>
                                    </a4j:commandButton>
                                    <a4j:commandButton alt="Excluir" title="Excluir"
                                        action="#{ cadastroAssunto.excluir }"
                                        image="/imagens/icones/bin.png"
                                        reRender="lstAssunto, frmAssunto">
                                        <rich:toolTip>
                                            <span style="white-space: nowrap"> Clicando aqui este
                                            registro pode ser editado. </span>
                                        </rich:toolTip>
                                    </a4j:commandButton>
                                </rich:column>
                            </rich:dataTable>
                            <rich:spacer height="10" />
                            <rich:datascroller for="lstAssunto" maxPages="10" align="center" />
                        </a4j:region></td>
                    </tr>

                </table>
            </a4j:form>

            <!-- Listagem -->
            <rich:spacer />
           
            <ui:include src="formulario.jspx" />
           
            <ui:include src="novosetor.jspx" />
        </ui:define>
    </ui:composition>
</jsp:root>

leandrogweb xxxss

unread,
Apr 25, 2008, 7:19:56 PM4/25/08
to jav...@googlegroups.com
Amigo isto e um bug veja
http://jira.jboss.com/jira/browse/RF-3012

uma possivel saida:
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=133192

espero que ajude.

2008/4/25 Weksley Viana <jogado...@gmail.com>:

Weksley Viana

unread,
Apr 26, 2008, 12:21:59 PM4/26/08
to jav...@googlegroups.com
Leandro dei uma lida mais não entendi muito bem na solução. Você poderia me dar uma dica, sem tem algo a ver com deixar o outputtext empty.

Obrigado desde já.

Weksley Viana

2008/4/25 leandrogweb xxxss <leand...@gmail.com>:

Carlos Júnior

unread,
Apr 26, 2008, 7:09:49 PM4/26/08
to jav...@googlegroups.com
Weskley,

passei pelo mesmo problema e acredito ja ter corrigido.
estou usando o <t:updateActionListener property="#{corMB.cor}" value="#{cores}" /> do Tomahawk para pegar a linha exata.

<rich:dataTable id="coresList" width="50%"
                                                    value="#{corMB.cor.lista}" var="cores"
                                                    align="center" rows="6" border="1"
                                                    rowClasses="odd-row,even-row">   
                                                    <f:facet name="header">
                                                        <rich:columnGroup>
                                                            <rich:column>
                                                                <h:outputText value="CORES"/>
                                                            </rich:column>
                                                            <rich:column>
                                                                <h:graphicImage value="../images/delete.gif" />

                                                            </rich:column>
                                                        </rich:columnGroup>
                                                    </f:facet>
                                                            <rich:column aling="left" filterBy="#{cores.dscCor}" filterEvent="onkeyup">
                                                                <f:facet name="header">
                                                                    <h:outputText value=" " title="Hack due to bug. Shuold be remoevd till release"></h:outputText>
                                                                </f:facet>
                                                                <h:commandLink value="#{cores.dscCor}" action="#{corMB.update}" immediate="true">
                                                                    <t:updateActionListener property="#{corMB.cor}" value="#{cores}" /> 
                                                                </h:commandLink>
                                                            </rich:column>
                                                            <rich:column align="center" width="10px">
                                                                    <h:selectBooleanCheckbox aling="center" value="#{cores.checked}" id="check" onclick="confirmaExclusao(this)">
                                                                        <a4j:support action="#{corMB.delete}" event="ondblclick">
                                                                            <t:updateActionListener property="#{corMB.cor}" value="#{cores}" />
                                                                        </a4j:support>
                                                                    </h:selectBooleanCheckbox>
                                                            </rich:column>
                                            </rich:dataTable>   
                                            <rich:spacer height="5" />
                                            <rich:datascroller for="coresList" maxPages="20" />


t:updateActionListener property="#{corMB.cor}"  onde corMB.cor eh meu maneged bean e  value="#{cores}" e o "var" da minha dataTable.

se tem modo mais simples eu nao sei, mas ta funcionando =)

[]'s


2008/4/26 Weksley Viana <jogado...@gmail.com>:

Weksley Viana

unread,
Apr 27, 2008, 6:21:06 PM4/27/08
to jav...@googlegroups.com
Carlos e que to usando a implementação da SUN inves da apache. Não to usando o myfaces, não sei a compatibilidade do JSF da Sun com o Tomahawk. Tentei usar o f:setPropertyActionListener, mas não deu certo, tentei tambem usar o a4j:actionParam, mas tambem não ta passando. Não sei mais o que fazer, se alguem tiver mais alguma dica, agradeço.

Weksley Viana

2008/4/26 Carlos Júnior <cam...@gmail.com>:

Carlos Jr

unread,
Apr 27, 2008, 8:36:42 PM4/27/08
to javasf: JavaServer Faces International Group
Weskley,

Tbm uso o JSF RI 1.2, junto dele estao faceletes, richfaces 3.2 e o
Tomahawk, este por enquanto, so me serviu para esse proposito.

o interessante eh q eu tbm fiz um teste com
<f:setPropertyActionListener /> e funcionou tbm. manda ai o teu
maneged bean !!



On 27 abr, 19:21, "Weksley Viana" <jogadorbas...@gmail.com> wrote:
> Carlos e que to usando a implementação da SUN inves da apache. Não to usando
> o myfaces, não sei a compatibilidade do JSF da Sun com o Tomahawk. Tentei
> usar o f:setPropertyActionListener, mas não deu certo, tentei tambem usar o
> a4j:actionParam, mas tambem não ta passando. Não sei mais o que fazer, se
> alguem tiver mais alguma dica, agradeço.
>
> Weksley Viana
>
> 2008/4/26 Carlos Júnior <camb...@gmail.com>:
> > 2008/4/26 Weksley Viana <jogadorbas...@gmail.com>:
>
> > Leandro dei uma lida mais não entendi muito bem na solução. Você poderia
> > > me dar uma dica, sem tem algo a ver com deixar o outputtext empty.
>
> > > Obrigado desde já.
>
> > > Weksley Viana
>
> > > 2008/4/25 leandrogweb xxxss <leandrog...@gmail.com>:
>
> > > Amigo isto e um bug veja
> > > >http://jira.jboss.com/jira/browse/RF-3012
>
> > > > uma possivel saida:
> > > >http://www.jboss.com/index.html?module=bb&op=viewtopic&t=133192
>
> > > > espero que ajude.
>
> > > > 2008/4/25 Weksley Viana <jogadorbas...@gmail.com>:
> ...
>
> mais »

Rogério Cruz Sousa

unread,
Apr 28, 2008, 8:15:10 AM4/28/08
to jav...@googlegroups.com
Olá Calos Junior,
eu estou com esse problema tmb, e estou com um dúvida na sua solução. 
Vc teve como alterar alguma coisa no seu ManagedBean pra pegar a propriedade<t:updateActionListener property="#{corMB.cor}" value="#{cores}" />  .. Vc poderia colocar o código dessa parte para o pessoal dar uma olhada.?

valeu
abraço

2008/4/26 Carlos Júnior <cam...@gmail.com>:

Carlos Jr

unread,
Apr 28, 2008, 9:10:53 AM4/28/08
to javasf: JavaServer Faces International Group
Segue o codigo.


[ Entity ]

package br.com.loja.model.entity;

// * tirei os imports

@Entity
@Table(name="tb_cor", schema = "vielle")
public class Cor extends BaseEntity implements Serializable {
@Id
@Column(name="cd_cor")
private int cdCor;

@Column(name="ds_cor")
private String dsCor;

private static final long serialVersionUID = 1L;

public Cor() {
super();
}

// tirei os getters and setters
}




[DAO ]
package br.com.loja.model.dao;

//imports

public class CorDao extends BaseDao<Cor>{

public CorDao() {
super(JPAHelper.createEntityManager(), Cor.class);
}

}

[ Facade ]
package br.com.loja.bussines.facade;

// imports

public class CorFacade extends BaseFacade{

private CorDao daoCor = new CorDao();

public CorFacade(){
setDao(daoCor);
}
}


[Bean]

package br.com.loja.bean;

// imports

public class CorBean{

private Cor cor = new Cor();
private CorFacade corFacade = new CorFacade();

public CorBean(){
search();
}



public Cor getCor() {
return cor;
}

public void setCor(Cor cor) {
this.cor = cor;
}



//Metodos camada de controle

public String save(){
if(cor.getCdCor() == 0){
corFacade.save(cor);
}else{
corFacade.update(cor);
}
search();
return "cor";
}


public String delete(){
//this.cor = (Cor) cor.getLista().getRowData();
if(this.cor.isChecked()){
corFacade.delete(cor);
}
search();
return "cor";
}

public String search(){
List<Object> cores = corFacade.listAll();
cor.setLista(new ListDataModel(cores));
return "cor";
}


public String update() {
return "editar";
}

}



<!-- MB Entity Cor -->
<managed-bean>
<description>ManagedBean Entity Cor</description>
<managed-bean-name>corMB</managed-bean-name>
<managed-bean-class>br.com.loja.bean.CorBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>



<navigation-rule>
<display-name>pages/cor</display-name>
<from-view-id>/pages/cor.xhtml</from-view-id>
<navigation-case>
<from-outcome>editar</from-outcome>
<to-view-id>/pages/cor.xhtml</to-view-id>
</navigation-case>
</navigation-rule>



Bom, ta usando isso.

[]'s


On 28 abr, 09:15, "Rogério Cruz Sousa" <rogeriocruzso...@gmail.com>
wrote:
> Olá Calos Junior,
> eu estou com esse problema tmb, e estou com um dúvida na sua solução.
> Vc teve como alterar alguma coisa no seu ManagedBean pra pegar a
> propriedade<t:updateActionListener property="#{*corMB.cor*}"
> value="#{cores}" /> .. Vc poderia colocar o código dessa parte para o
> pessoal dar uma olhada.?
>
> valeu
> abraço
>
> 2008/4/26 Carlos Júnior <camb...@gmail.com>:
> > 2008/4/26 Weksley Viana <jogadorbas...@gmail.com>:
>
> > Leandro dei uma lida mais não entendi muito bem na solução. Você poderia
> > > me dar uma dica, sem tem algo a ver com deixar o outputtext empty.
>
> > > Obrigado desde já.
>
> > > Weksley Viana
>
> > > 2008/4/25 leandrogweb xxxss <leandrog...@gmail.com>:
>
> > > Amigo isto e um bug veja
> > > >http://jira.jboss.com/jira/browse/RF-3012
>
> > > > uma possivel saida:
> > > >http://www.jboss.com/index.html?module=bb&op=viewtopic&t=133192
>
> > > > espero que ajude.
>
> > > > 2008/4/25 Weksley Viana <jogadorbas...@gmail.com>:
> ...
>
> mais »

Rogério Cruz Sousa

unread,
Apr 28, 2008, 9:53:54 AM4/28/08
to jav...@googlegroups.com
Ae Carlos Junior,
valeu ... consegui fazer com o f:setPropertyActionListener tmb.

Abraço
até mais
rogério

2008/4/28 Carlos Jr <cam...@gmail.com>:

Carlos Júnior

unread,
Apr 28, 2008, 10:37:29 AM4/28/08
to jav...@googlegroups.com
aeeeeh     \0/

=)

[]'s

2008/4/28 Rogério Cruz Sousa <rogerioc...@gmail.com>:

Weksley Viana

unread,
Apr 28, 2008, 1:55:23 PM4/28/08
to jav...@googlegroups.com
Ei Carlos deu certo com o <f:setPropertyActionListener />, coloquei aqui testei, acho que era pq minha aplicação tava em cache, limpei tudo e rodei novamente ai deu certo. Então nem precisa do tomahawk. Valeu pela força.

2008/4/27 Carlos Jr <cam...@gmail.com>:

Carlos Júnior

unread,
Apr 28, 2008, 2:57:18 PM4/28/08
to jav...@googlegroups.com
=)

2008/4/28 Weksley Viana <jogado...@gmail.com>:

Sandro Santos

unread,
May 20, 2008, 1:12:32 PM5/20/08
to javasf: JavaServer Faces International Group
Galera,

Estou usando a versão 1.1 infelizmente, e ele não tem a tag:
<f:setPropertyActionListener />

Alguém conhece outra solução para o problema?

[]´s

On 28 abr, 15:57, "Carlos Júnior" <camb...@gmail.com> wrote:
> =)
>
> 2008/4/28 Weksley Viana <jogadorbas...@gmail.com>:
>
>
>
> > Ei Carlos deu certo com o <f:setPropertyActionListener />, coloquei aqui
> > testei, acho que era pq minha aplicação tava em cache, limpei tudo e rodei
> > novamente ai deu certo. Então nem precisa do tomahawk. Valeu pela força.
>
> > 2008/4/27 Carlos Jr <camb...@gmail.com>:
> ...
>
> mais »- Ocultar texto entre aspas -
>
> - Mostrar texto entre aspas -

Rafael Ponte

unread,
May 20, 2008, 1:16:30 PM5/20/08
to jav...@googlegroups.com
Myfaces Tomahawk!

2008/5/20 Sandro Santos <sandro...@gmail.com>:



--
Rafael Ponte
http://www.rponte.com.br

avelino

unread,
Jun 2, 2008, 8:19:28 AM6/2/08
to javasf: JavaServer Faces International Group
Pessoal estou com o mesmo problema.

Como posso usar o <f:setPropertyActionListener />?? coloco onde? e
como fica o value e o target??

segue o meu XHTML

<rich:dataTable onRowMouseOver="this.style.backgroundColor='#FFEE99'"

onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
cellpadding="0" cellspacing="0" border="0" width="100%"
headerClass="DTheader" footerClass="DTfooter" styleClass="DTcorpo"
id="listagem" rows="25" value="#{Agencia.lista}" var="registro"
rendered="#{Agencia.lista.rowCount > 0}" >


<rich:column sortBy="#{registro.agencia}" >
<f:facet name="header">
<h:outputText value="#{msg.header_agencia}" />
</f:facet>
<a4j:commandLink action="#{Agencia.selecionar}" >
<h:outputText value="#{registro.agencia}"
styleClass="TextoNormal" /><h:outputText value=" - " /><h:outputText
value="#{registro.digAgencia}" styleClass="TextoNormal"/>
</a4j:commandLink>
</rich:column>



On 20 maio, 14:16, "Rafael Ponte" <rpo...@gmail.com> wrote:
> Myfaces Tomahawk!
>
> 2008/5/20 Sandro Santos <sandro.san...@gmail.com>:
> ...
>
> mais »

Carlos Júnior

unread,
Jun 3, 2008, 11:28:07 AM6/3/08
to jav...@googlegroups.com
Avelino,

conseguiu resolver o problema ?

2008/6/2 avelino <avelin...@gmail.com>:

avelino

unread,
Jun 3, 2008, 4:16:50 PM6/3/08
to javasf: JavaServer Faces International Group
Ainda estou aguardando Carlos...
Voce pode ajudar ?

On 3 jun, 12:28, "Carlos Júnior" <camb...@gmail.com> wrote:
> Avelino,
>
> conseguiu resolver o problema ?
>
> 2008/6/2 avelino <avelinonp...@gmail.com>:
> ...
>
> mais »

Weksley Viana

unread,
Jun 3, 2008, 7:29:12 PM6/3/08
to jav...@googlegroups.com
Seguinte Avelino, você tem uma listagem de Agenda certo? No teu ManegerBean tu vai ter que ter um atributo do tipo desta listagem, vamos supor que esta listagem seja uma lista de Agencia, então no teu manager bean tu cria um atributo desses e no target tu coloca #{Agencia.agencia}.
Resumindo como vai ficar a tag:

<f:setPropertyActionListener value="#{registro}" target="#{Agencia.agencia}"/>

Onde registro é um item da tua coleção, quando clicar no link o atributo agencia que tu deve ter criado no Manager Bean vai ser associado ao registro no qual tu clicou.

Espero ter ajudado.

2008/6/3 avelino <avelin...@gmail.com>:

Carlos Júnior

unread,
Jun 3, 2008, 8:37:37 PM6/3/08
to jav...@googlegroups.com
Avelino,

Na minha aplicacao, a tag <f:setPropertyActionListener /> ficou assim:

<rich:column align="center" width="5%">
            <h:selectBooleanCheckbox aling="center" value="#{cores.checked}" id="check" onclick="confirmaExclusao(this)">
            <a4j:support action="#{corBean.excluir}" event="ondblclick">
                 <f:setPropertyActionListener target="#{corBean.cor}" value="#{cores}" /> 
             </a4j:support>
            </h:selectBooleanCheckbox>
</rich:column>

pq no caso, eu estou selecionando a linha atraves de um checkbox.

target="#{corBean.cor}" [ corBean eh meu maneged bean, e cor eh meu Entity]


public class CorBean {
    private Cor cor = new Cor();
  //metodos , getters and setters ....
}

value="#{cores}"  [cores eh a propriedade "var" do rich:DataTable]

<rich:dataTable id="coresLista" width="50%" value="#{corBean.cor.listaDataModel}" var="cores"
                align="center" rows="6" border="1" onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
                onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'">
................
</rich:dataTable>


acredito q vc esteja tentando editar o conteudo a linha da tabela ou coisa parecida, ai no seu caso, ficaria dentro do <a4j:commandLink>

testa ai

[]'s

2008/6/3 avelino <avelin...@gmail.com>:

avelino

unread,
Jun 4, 2008, 8:29:42 AM6/4/08
to javasf: JavaServer Faces International Group
Não funcionou continua trazando o registro errado quando ordeno.
segue abaixo o codigo:

// Meu Bean
public class AgenciaBean l {

/**
* propriedades
*/
private Integer agencia;
private String descAgencia;
private String digAgencia;
private String banco;
private String nomeBanco;
private String idUf;

//get e sett
-------------------------

//Meu FacesBean

public class Agencia extends FacesBean {

/**
* managed properties
*/
private AgenciaBean bean;
private IAgenciaDao dao;
private AgenciaBean pesquisa;
private DataModel lista = new ListDataModel();
private List<SelectItem> comboUF;
private List<SelectItem> comboBanco;

/**
* metodo Lista Agencia
*/
public String listar() {
bean.reset();
System.out.println("#metodo listar:");
lista.setWrappedData(dao.findAllAgencia());
setComboUF(dao.findAllUf());
setComboBanco(dao.findAllBanco());
if (lista.getRowCount() == 0)
registrarMensagemErro("Nenhum registro encontrado");
return "lista-agencia";
}

public String pesquisar() {
System.out.println("#chamada do metodo pesquisar: " );
lista.setWrappedData(dao.searchAllAgencia(pesquisa));
if (lista.getRowCount() == 0)
registrarMensagemErro("Nenhum resultado encontrado para esta
pesquisa");
return "lista-agencia";
}

// (SETA) SELECIONA O REGISTRO DA LISTAGEM
public String selecionar() {
setBean((AgenciaBean) lista.getRowData());
System.out.println("#Linha selecionada = " +lista.getRowData());
return null;
}

public String visualizar() {
if ((bean.getAgencia() == null) || (bean.getAgencia().equals(""))) {
registrarMensagemErro("Selecione um registro para visualizar");
return "lista-agencia";
}
return "visualiza-agencia";
}

public String inserir(){
bean.reset();
setComboUF(dao.findAllUf());
setComboBanco(dao.findAllBanco());
return "insere-agencia";
}

public String inserirSalvar(){
if (dao.findByAgencia(bean.getAgencia()) != null) {
registrarMensagemErro("Agência já cadastrado");
} else {
if (!dao.insert(bean)) {
registrarMensagemErro("Erro ao cadastrar Agência");
} else {
return listar();
}
}
return "insere-agencia";
}

public String alterar() {
if ((bean.getAgencia() == null) || (bean.getAgencia().equals(""))) {
setComboUF(dao.findAllUf());
registrarMensagemErro("Selecione um registro para alterar");
return "lista-agencia";
}
return "altera-agencia";
}

public String alterarSalvar() {
if (!dao.update(bean)) {
System.out.println("#metodo alterar");

registrarMensagemErro("Erro ao alterar Agência");
} else {
return listar();
}
return "altera-agencia";
}

public String voltar() {
setBean(new AgenciaBean());
return "lista-agencia";
}

//get e set
-------------------------

parte da Pagina XHTML:

<rich:dataTable onRowMouseOver="this.style.backgroundColor='#FFEE99'"

onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
cellpadding="0" cellspacing="0" border="0" width="100%"
headerClass="DTheader" footerClass="DTfooter" styleClass="DTcorpo"
id="listagem" rows="25" value="#{Agencia.lista}" var="registro"
rendered="#{Agencia.lista.rowCount > 0}" >

<rich:column sortBy="#{registro.agencia}" >
<f:facet name="header">
<h:outputText value="#{msg.header_agencia}" />
</f:facet>
<a4j:commandLink action="#{Agencia.selecionar}" >
<f:setPropertyActionListener value="#{registro.agencia}"
target="#{Agencia.bean.agencia}" />
<h:outputText value="#{registro.agencia}"
styleClass="TextoNormal" />
</a4j:commandLink>
</rich:column>


</rich:dataTable>

--------------------------

----------------------------------------------------------

On 3 jun, 21:37, "Carlos Júnior" <camb...@gmail.com> wrote:
> Avelino,
>
> Na minha aplicacao, a tag <f:setPropertyActionListener /> ficou assim:
>
> <rich:column align="center" width="5%">
> <h:selectBooleanCheckbox aling="center" value="#{cores.checked}"
> id="check" onclick="confirmaExclusao(this)">
> <a4j:support action="#{corBean.excluir}" event="ondblclick">
> * <f:setPropertyActionListener target="#{corBean.cor}"
> value="#{cores}" /> *
> </a4j:support>
> </h:selectBooleanCheckbox>
> </rich:column>
>
> pq no caso, eu estou selecionando a linha atraves de um checkbox.
>
> *target="#{corBean.cor}" *[ corBean eh meu maneged bean, e cor eh meu
> Entity]
>
> public class CorBean {
> private Cor cor = new Cor();
> //metodos , getters and setters ....
>
> }
>
> *value="#{cores}" *[cores eh a propriedade "var" do rich:DataTable]
>
> <rich:dataTable id="coresLista" width="50%"
> value="#{corBean.cor.listaDataModel}" *var="cores" *
> align="center" rows="6" border="1"
> onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
>
> onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'">
> ................
> </rich:dataTable>
>
> acredito q vc esteja tentando editar o conteudo a linha da tabela ou coisa
> parecida, ai no seu caso, ficaria dentro do <a4j:commandLink>
>
> testa ai
>
> []'s
>
> 2008/6/3 avelino <avelinonp...@gmail.com>:
> ...
>
> mais »
Reply all
Reply to author
Forward
0 new messages