[b]Galera me ajudem ai por favor sei que e um topico repetido ja li varios mais nao consegui resolver
seguinte nao consigo lista no combo box
tenho duas classe anotadas
A Cliente e Funcionario
e no cadastro de cliente quero colocar o funcionario que cadastrou o cliente
mais nao da erro nenhum apenas nao lista no jsp [/b]
jsp formulario.ok.jsp
<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Cadastro de Clientes</title>
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<h1>
Cadastro de Clientes
</h1>
<form action="cliente.armazena.logic" method="post">
<input type="hidden" name="cliente.id" value="${cliente.id}" />
Nome do Cliente
<input type="text" name="cliente.nome" value="${cliente.nome}" />
<br />
Funcionario Responsavel pelo Cadastro
<select name="cliente.funcionario.id">
<c:forEach var="funcionario" items="${ListaFuncionarios}">
<option value="${funcionario.id}"
<c:if test="${cliente.funcionario.id == funcionario.id}">selected="true"</c:if>>
${funcionario.nome}
</option>
</c:forEach>
</select>
<input type="submit" />
</form>
</body>
</html>
Clientelogic
package logic;
import java.util.List;
import org.mytech.beans.Cliente;
import org.mytech.beans.Funcionario;
import org.mytech.daos.DaoFactory;
import org.vraptor.annotations.Component;
import org.vraptor.annotations.InterceptedBy;
@Component
@InterceptedBy(DaoInterceptor.class)
public class ClienteLogic {
private final DaoFactory daoFactory;
private Cliente cliente;
private List<Cliente> clientes;
public ClienteLogic(DaoFactory daoFactory) {
this.daoFactory = daoFactory;
}
public void formulario() {
}
public void editar(Cliente cliente) {
// carrega os dados no banco para edicao
this.cliente = this.daoFactory.getClienteDao().procura(cliente.getId());
}
// Adiciona um genero novo ou atualiza se for edicao
public void armazena (Cliente cliente) {
this.daoFactory.beginTransaction();
this.daoFactory.getClienteDao().atualiza(cliente);
this.daoFactory.commit();
System.out.println("Adicionou Cliente:" + cliente.getNome());
}
// Remove um genero novo ou atualiza se for edicao
public void remove (Cliente cliente) {
this.daoFactory.beginTransaction();
this.daoFactory.getClienteDao().remove(cliente);
this.daoFactory.commit();
System.out.println("Removeu o Cliente:" + cliente.getNome());
}
public void lista () {
this.clientes = this.daoFactory.getClienteDao().listaTodos();
System.out.println("Removeu o Cliente:" + clientes);
}
public Cliente getCliente() {
return cliente;
}
public List<Cliente> getClientes() {
return clientes;
}
//list para relacionamentos
// metodo usado para popular o select
public List<Funcionario> getListaFuncionarios() {
return this.daoFactory.getFuncionarioDao().listaTodos();
}
}
Cliente
package org.mytech.beans;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinTable;
import javax.persistence.OneToMany;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
/* Cliente entity.
*
* @author MyEclipse Persistence Tools
*/
@Entity
public class Cliente implements java.io.Serializable {
@Transient
private int temporaria;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
// @Column(name="id_cliente")
private Long id;
@Column(nullable=false, length=40,
insertable=true, updatable=true)
private String nome;
/* Mapeamento para relacionamentos*/
@OneToMany(cascade=CascadeType.PERSIST, fetch=FetchType.EAGER)
@JoinTable(name="funcionario")
private Set<Funcionario> funcionarios = new HashSet<Funcionario>();
// Constructors
/** default constructor */
public Cliente() {
}
/**
* @return the temporaria
*/
public int getTemporaria() {
return temporaria;
}
/**
* @param temporaria the temporaria to set
*/
public void setTemporaria(int temporaria) {
this.temporaria = temporaria;
}
/**
* @return the id
*/
public Long getId() {
return id;
}
/**
* @param id the id to set
*/
public void setId(Long id) {
this.id = id;
}
/**
* @return the nome
*/
public String getNome() {
return nome;
}
/**
* @param nome the nome to set
*/
public void setNome(String nome) {
this.nome = nome;
}
/**
* @return the funcionarios
*/
public Set<Funcionario> getFuncionarios() {
return funcionarios;
}
/**
* @param funcionarios the funcionarios to set
*/
public void setFuncionarios(Set<Funcionario> funcionarios) {
this.funcionarios = funcionarios;
}
}
Dao
package org.mytech.daos;
import java.util.List;
import org.hibernate.Session;
public class Dao<T> {
private final Session session;
private final Class type;
public Dao(Session session, Class type) {
this.session = session;
this.type = type;
}
protected Session getSession() {
return session;
}
public List<T> listaTodos(){
return this.session.createCriteria(this.type).list();
}
public T procura(Long id) {
return (T) session.load(this.type, id);
}
}
ta no modo trace do vraptor
17:43:07,921 DEBUG [VRaptorServlet ] new request to /locadora/cliente.formulario.logic
17:43:07,921 DEBUG [DefaultLogicLocator ] Requested url (request wrapped): /locadora/cliente.formulario.logic
17:43:07,921 DEBUG [DefaultLogicLocator ] requested uri: cliente.formulario.logic
17:43:07,921 DEBUG [DefaultLogicLocator ] logic method extracted: org.vraptor.component.DefaultLogicMethod@201dbc
17:43:07,921 DEBUG [VRaptorExecution ] Calling execute on org.vraptor.core.WebRequest@1646de5 / org.vraptor.component.DefaultLogicMethod@201dbc
17:43:07,921 DEBUG [DefaultViewLocator ] Requested url (request wrapped): /locadora/cliente.formulario.logic
17:43:07,921 DEBUG [DefaultViewLocator ] requested uri: cliente.formulario.logic
17:43:07,921 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.RegisterAttributesInteceptor@6b0a6a
17:43:07,921 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.FlashScopeInterceptor@178efd5
17:43:07,921 DEBUG [InterceptorDealer ] Adding interceptor logic.DaoInterceptor
17:43:07,921 DEBUG [InterceptorsLogicFlow] Calling interceptor: logic.DaoInterceptor@c9b2bc
17:43:07,921 DEBUG [BasicIntrospector ] Outjecting key org.mytech.daos.DaoFactory at REQUEST
17:43:07,952 DEBUG [InterceptorDealer ] Adding interceptor org.vraptor.interceptor.ComponentLookupInterceptor
17:43:07,952 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.ComponentLookupInterceptor@1f58334
17:43:07,952 DEBUG [ComponentLookupInterceptor] Instantiating class logic.ClienteLogic
17:43:07,952 DEBUG [InterceptorDealer ] Adding interceptor org.vraptor.interceptor.InjectionInterceptor
17:43:07,952 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.InjectionInterceptor@1790458
17:43:07,952 DEBUG [InterceptorDealer ] Adding interceptor org.vraptor.interceptor.SettingAndValidationInterceptor
17:43:07,952 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.SettingAndValidationInterceptor@c5e60
17:43:07,952 DEBUG [ValidatorEngine ] checking validation using org.vraptor.component.DefaultLogicMethod
17:43:07,952 DEBUG [ValidatorEngine ] loading resource bundle: messages for locale pt_BR
17:43:07,952 DEBUG [ValidatorEngine ] Resource bundle not found: messages
17:43:07,952 DEBUG [InterceptorDealer ] Adding interceptor org.vraptor.interceptor.ExecuteLogicInterceptor
17:43:07,952 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.ExecuteLogicInterceptor@7f1ac
17:43:07,952 DEBUG [ExecuteLogicInterceptor] executing business logic org.vraptor.component.DefaultLogicMethod@201dbc
17:43:07,952 DEBUG [InterceptorDealer ] Adding interceptor org.vraptor.interceptor.OutjectionInterceptor
17:43:07,952 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.OutjectionInterceptor@18b91cb
17:43:07,984 DEBUG [BasicIntrospector ] Outjecting key clientes at REQUEST
17:43:07,984 DEBUG [BasicIntrospector ] Outjecting key listaFuncionarios at REQUEST
17:43:07,984 DEBUG [BasicIntrospector ] Outjecting key cliente at REQUEST
17:43:07,984 DEBUG [InterceptorDealer ] Adding interceptor org.vraptor.interceptor.ViewInterceptor
17:43:07,984 DEBUG [InterceptorsLogicFlow] Calling interceptor: org.vraptor.interceptor.ViewInterceptor@1aa8eb7
17:43:07,984 DEBUG [ViewInterceptor ] last interception: ready to forward with result ok
17:43:07,984 DEBUG [RegexViewManager ] Server-side redirect to: /cliente/formulario.ok.jsp
[b]Galera me ajudem ai por favor sei que e um topico repetido ja li varios mais nao consegui resolver
seguinte nao consigo lista no combo box
tenho duas classe anotadas
A Cliente e Funcionario
e no cadastro de cliente quero colocar o funcionario que cadastrou o cliente
mais nao da erro nenhum apenas nao lista no jsp [/b]