Displaytag URGENTE

3 respostas
N

Olá

Estou fazendo projeto final da faculdade e estou usando a Displaytag para as listagens.
Surgiu uma duvida que está atrapalhando o andamento do projeto.
Quero saber como fazer para listar a descrição e não o código de uma tabela do banco.

Ex.:

Tenho a tabela veiculo. Cada veiculo tem um código e uma descrição. Estou fazendo a pesquisa pelo código e na listagem está aparecendo o código. Quero que apareça a descrição e não o código.
E muitas outras listagens vai ter que ser assim. Tem que aparecer na listagem a descrição de um determinado código.

Já ouvi falar que dá pra fazer pelo Decorator da Displaytag. Não conseguimos fazer.

Alguém já fez isso. Alguém tem um código ai que possa mostrar.

Obrigado.[/b]

3 Respostas

H

E ai cara blz.

Bem vc cria uma classe simples, e extends ela para TableDecorator.

Após isso vc vai trabalhar com o(s) objeto(s) que estão indo para a tabela.

é só digitar THIS. e o autocomplete mostra para vc.

Exemplo simples…

crie um metodo …

public String getDescricaoVeiculo(){
//caso vc esteja mandando um objeto Veiculo pegue da seguinte maneira.		
Veiculo v = (Veiculo) this.getCurrentRowObject();

    v.getId()//pronto vc esta com o id que vc normalmente vai exibir nessa
tabela, ai é só passar esse id para a sua classe de negocio seja o que for
e a partir dela pegar no banco...
Veiculo veiculo = metodoNeg.retornaVeiculo(v.getId());

return veiculo.getDescricao;
}

Agora vamos no seu JSP

<lista:table id="minhatabela" decorator="br.com.algumacoisa.ClasseDecorator" name="oListaConsulta" style="width: 100%; border: 0px" class="tabela1" cellspacing="1" cellpadding="0">
		<lista:caption>
	           <thead>
				<tr class="tr1">
				     <th>Veiculo Descricao</th>
				</tr>
			</thead>
		</lista:caption>
    		<lista:column property="descricaoVeiculo" title="" style="width: 120px"/>
</lista:table>
Observe que o nome do PROPERTY é o nome do seu método SEM o get.

getDescricaoVeiculo();

descricaoVeiculo;

E na tag decorator da tag lista:table vc adiciona o caminho completo da sua classe decorator.

Bem espero que tenha entendido, isso é um exemplo simples. qualquer dúvida posta ai.

Abraços

N

Outra duvida importante…

Como eu faço pra criar uma coluna com checkbox na DisplayTag? Tenho que colocar uma coluna de tal maneira que eu selecione os checkbox desejados e ao mudar de pagina os checks q eu marquei na primeira pagina fiquem selecionados, ou seja, quero poder selecionar os checks de varias paginas e se eu quiser voltar na primeira pagina eles ainda estejam selecionados…

H

rapaz eu fiz uma vez isso a um tempo atrás eu apenas adicionei o html no retorno.

mais ou menos assim.

public String getCheckBoxAnalise(){
		Object obj = this.getCurrentRowObject();
		
		return "<INPUT type='checkbox' name='numVistoria' id='numVistoria' value='"+ numVistoria +"' onclick='javascript:checaCheckBox(this,"+criticadoAnalise+","+passivelExclusao+")'/>";
	}

Ta tosco mas seria mais ou menos isso…

Criado 6 de julho de 2007
Ultima resposta 11 de jul. de 2007
Respostas 3
Participantes 2