inputText receber valor de um metodo

5 respostas
Jacomete

Bom dia…

sou novo em jsf e estou com dificuldade em fazer corretamente o seguinte:

tenho um inputtext dentro de uma datatable que mostra o status de um usuario (ATIVO E INATIVO) o problema e que no banco eu guardo 1 para ativo e 0 para inativo, como faço para mostrar o texto INATIVO para o status 0 e ATIVO para o status 1 o status e uma propiedade do meu bean usuario.

fiz um metodo para retornar isso, soh que não sei como mandar o resultado deve metodo para o inputtext

agradeço

Leandro Jacomete

5 Respostas

caio_ferreira

Nunca usei JSF, então não sei se um inputext é assim, mas se for, acho q isso da certo

<textInput id="status" text=""/>

public void verficarEstado(int estado(aqui vc passa o resultado da consulta)){
     if(estado == 0) // verifica se é igual a 0
          status.text = "INATIVO"; // se for, vc atribui o valor INATIVO a propriedade text do textInput
     else
          status.text = "ATIVO"; // se não for, vc atribui o valor ATIVO
}

espero q seja isso

Jacomete

obrigado pela resposta…

o metodo ja criei esta funcionando parecido com esse seu, soh naum consigo jogar o resultado dele no inputtext

obrigado

caio_ferreira

então, mas o seu textInput não tem uma propriedade id?? pra vc poder acessar ele

exemplo:

ai vc atribui o valor pra ele assim: status.text = “INATIVO” ou status.text = “ATIVO”

não sei se é assim no JSF, pois nunca usei, mas no FLEX assim funciona

Jacomete

ele tem a propiedade mas não consigo acessar no momento em que a pagina vai carregar…

resolvi dessa forma:

criei uma classe converter
public class ConverterStatusUsuario implements Converter {

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
	Integer status = Integer.parseInt(value);
	if (status == 0 ) {
		return "Inativo";
	} else {
		return "Ativo";
	}
} 

@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {      
	Integer status = (Integer)value;
	if (status == 0 ) {
		return "Inativo";
	} else {
		return "Ativo";
	}
}

e utilizo ele assim na pagina jsf

&lt;h:outputText value="#{usuario.status}"&gt;
      &lt;f:converter converterId="converterStatusUsuario" /&gt;
      &lt;/h:outputText&gt;

assim ja aproveito para outros lugares tbem

valeu a ajuda

Jacomete

Resolvido

Criado 5 de novembro de 2010
Ultima resposta 12 de nov. de 2010
Respostas 5
Participantes 2