[Logo] Neo Framework Forum
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Register] Registrar / 
[Login] Entrar 
Como carregar um comboBox (select) com dados vindos do banco de dados ?  XML
Índice dos Fóruns -> Dúvidas
Autor Mensagem
vnbarbieri
Equipe

Membro desde: 30/04/2008 12:37:20
Mensagens: 6
Offline

Estou quebrando a cabeça para popular um combobox com dados vindos do banco de dados. Possuo uma tabela no banco de dados chamada "tipoNoticia" a qual possui duas propriedades, "idTipoNoticia" e "descricao". Precisaria carregar esses dados em um comboBox para quando for cadastrar uma noticia, essa noticia fizesse referencia ao id do Tipo de Noticia. Abaixo um exemplo de como gostaria de carregar o combobox (select):

Code:
 <select id="tipoNoticia">
 <option value="1" label="Positiva">Positiva</option>
 <option value="2" label="Negativa">Negativa</option>
 ...
 </select>
 



abraços.

pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Olá!

O neo faz isso automaticamente para você... por ex:

Code:
 @Entity
 ...
 class TipoNoticia {
 
 ....
 
 @DescriptionProperty
 public String getDescricao(){
 ...
 }
 
 @Id
 public String getCdtiponoticia(){
 ...
 }
 ...
 }
 


ai você coloca no seu jsp:
Code:
 <t:property name="tiponoticia" />
 


isso monta um código do tipo:

Code:
 <select name="tiponoticia">
 <option value="seu.pacote.TipoNoticia[PROPRIEDADE ANOTADA COM ID=1]"/>PROPRIEDADE ANOTADA COM DESCRIPTION PROPERTY</option>
 </select>
 


Entendeu??

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
vnbarbieri
Equipe

Membro desde: 30/04/2008 12:37:20
Mensagens: 6
Offline

Não fungou... Tentei declarar um atributo da classe Noticia do tipo TipoNoticia tbm nao rolou...

Invalid property 'TipoNoticia' of bean class [br.teste.bean.Noticia]: Bean property 'TipoNoticia' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?

Classe TipoNoticia:
Code:
 @Entity
 public class TipoNoticia {
 	Integer idTipoNoticia;
 	String descricao;
 	
 	@Id
 	@GeneratedValue(strategy=GenerationType.AUTO)
 	public Integer getIdTipoNotitica() {
 		return idTipoNoticia;
 	}
 	
 	public void setIdTipoNoticia(Integer idTipoNoticia) {
 		this.idTipoNoticia= idTipoNoticia;
 	}
 	
 	@DescriptionProperty
 	public String getDescricao() {
 		return descricao;
 	}
 
 	public void setDescricao(String descricao) {
 		this.descricao= descricao;
 	}
 }
 


Classe Noticia:
Code:
 @Entity
 public class Noticia {
         Integer idNoticia;
         Integer idTipoNoticia;
 	String descricao;
 	
 	@Id
 	@GeneratedValue(strategy=GenerationType.AUTO)
 	public Integer getIdNoticia() {
 		return idNoticia;
 	}
 	
 	public void setIdNoticia(Integer idNoticia) {
 		this.idNoticia= idNoticia;
 	}
 
 	public Integer getIdTipoNoticia() {
 		return idTipoNoticia;
 	}
 	
 	public void setIdTipoNoticia(Integer idTipoNoticia) {
 		this.idTipoNoticia= idTipoNoticia;
 	}
 	
 	public String getDescricao() {
 		return descricao;
 	}
 
 	public void setDescricao(String descricao) {
 		this.descricao= descricao;
 	}
 }
 


jsp noticiaEntrada.jsp:
Code:
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 
 <t:entrada>
 	<t:janelaEntrada>
 		<t:tabelaEntrada>
 			<t:property name="idNoticia"/>
                         <t:property name="idTipoNoticia"/>
 			<t:property name="TipoNoticia" label="Tipo Noticia:"/>
 			<t:property name="descricao" label="Descrição:"/>
 		</t:tabelaEntrada>
 	</t:janelaEntrada>
 </t:entrada>
 


vnbarbieri
Equipe

Membro desde: 30/04/2008 12:37:20
Mensagens: 6
Offline

Alterei meu jsp para:

Code:
 <t:entrada>
 	<t:janelaEntrada>
 		<t:tabelaEntrada>
 			<t:property name="idNoticia"/>
 			<t:property name="idTipoNoticia" type="select-one" itens="TipoNoticia" label="Tipo Noticia:"/>
 			<t:property name="descricao" label="Descrição:"/>
 		</t:tabelaEntrada>
 	</t:janelaEntrada>
 </t:entrada>
 


agora nao deu erro, porém nao carregou nada tbm na combo!!!
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Está mapeado errado.

Code:
 @Entity
  public class Noticia {
          Integer idNoticia;
          TipoNoticia tiponoticia;
  	String descricao;
  	
  	@Id
  	@GeneratedValue(strategy=GenerationType.AUTO)
  	public Integer getIdNoticia() {
  		return idNoticia;
  	}
  	
  	public void setIdNoticia(Integer idNoticia) {
  		this.idNoticia= idNoticia;
  	}
  
         @manytoone
         @joincolumn(name="idTipoNoticia")
  	public Tiponoticia getTiponoticia() {
  		return tiponoticia;
  	}
  	
  	public void setIdTipoNoticia(Integer idTipoNoticia) {
  		this.idTipoNoticia= idTipoNoticia;
  	}
  	
  	public String getDescricao() {
  		return descricao;
  	}
  
  	public void setDescricao(String descricao) {
  		this.descricao= descricao;
  	}
  }
  
 

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
vnbarbieri
Equipe

Membro desde: 30/04/2008 12:37:20
Mensagens: 6
Offline

opa!!! agora funcionou heheheh mto obrigado!

abraço.
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Opa! Vlw.. qualquer coisa estamos ai!

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
 
Índice dos Fóruns -> Dúvidas
Ir para:   
Powered by JForum 2.1.7 © JForum Team