Ajuda com consulta simples no banco (loja virtual)

Olá pessoal, eu gostaria muito da ajuda de voces.
Eu estou implementando um sistema usando a loja virtual da caelum como modelo.
Porem estou encontrando uma dificuldade para implementar a busca no sistema…
Gostaria de fazer uma busca simples, mas nao funciona, tentei utilizar o exemplo do mydvds, porem nao tive sucesso.
Gostaria de pedir a juda de voces na implementação dessa busca simples sem a utilização do ajax, ou nao é possivel ?

Estou enviando os codigo abaixo.

[code]
package br.com.projeto.modelo.dao;

import br.com.projeto.modelo.Produto;
import br.com.projeto.modelo.Usuario;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;

/**
*

  • @author Bruno Wilson
    */
    public class Dao {

    private final Session session;
    private final Class classe;

    protected Session getSession() {
    return session;
    }

    Dao(Session session, Class classe) {
    this.session = session;
    this.classe = classe;
    }

    public void adiciona(T u) {
    this.session.save(u);
    }

    public void remove(T u) {
    this.session.delete(u);
    }

    public void atualiza(T u) {
    this.session.merge(u);
    }

    public List listaTudo() {
    return this.session.createCriteria(this.classe).list();
    }

    public T procura(Long id) {
    return (T) session.load(this.classe, id);
    }

}
[/code]

package br.com.projeto.logic;

import br.com.projeto.loja.DaoInterceptor;
import br.com.projeto.modelo.Categoria;
import br.com.projeto.modelo.Fornecedor;
import br.com.projeto.modelo.Produto;
import br.com.projeto.modelo.dao.DaoFactory;
import java.util.List;
import org.vraptor.annotations.Component;
import org.vraptor.annotations.InterceptedBy;

/**
 *
 * @author Bruno Wilson
 */
@Component
@InterceptedBy({AutorizadorInterceptor.class, DaoInterceptor.class})
public class ProdutoLogic {


    private final DaoFactory daoFactory;
    private Produto produto;
    private List<Produto> produtos;


    public Produto getProduto() {
        return produto;
    }

    public ProdutoLogic(DaoFactory daoFactory) {
        this.daoFactory = daoFactory;
    }

    public void remove(Produto produto) {
        this.daoFactory.beginTransaction();
        this.daoFactory.getProdutoDao().remove(produto);
        this.daoFactory.commit();
    }

    public void editar(Produto produto) {
// carrega os dados no banco para edicao
        this.produto = this.daoFactory.getProdutoDao().procura(produto.getId());
    }

public void armazena(Produto produto) {
        this.daoFactory.beginTransaction();
        this.daoFactory.getProdutoDao().atualiza(produto);
        this.daoFactory.commit();
    }

    public void formulario() {
    }

    public List<Produto> getProdutos() {
        return produtos;
    }

     public List<Fornecedor> getListaFornecedores() {
        return this.daoFactory.getFornecedorDao().listaTudo();
    }

    public List<Categoria> getListaCategorias() {
        return this.daoFactory.getCategoriaDao().listaTudo();
    }

    public void lista() {
        produtos = this.daoFactory.getProdutoDao().listaTudo();
    }


   
}

[code]package br.com.projeto.modelo;

import java.util.Calendar;
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.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Temporal;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;

/**
*

  • @author Bruno Wilson
    */
    @Entity
    public class Produto {

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE)
    @Column(name=“id_produto”)
    private Long id;

    @Column(name=“nome_produto”)

    private String nome;

    @Column(nullable=false)
    private String modelo;

    private String marca;

    private double vlvenda;

    private double vlcompra;

    private int quantidade;

    @Temporal(javax.persistence.TemporalType.DATE)
    private Calendar dta;

    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name=“id_categoria”,
    insertable=true, updatable=true)
    @Fetch(FetchMode.JOIN)
    @Cascade(CascadeType.SAVE_UPDATE)
    private Categoria categoria;

    public Calendar getDta() {
    return dta;
    }

    public void setDta(Calendar dta) {
    this.dta = dta;
    }

    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name=“id_fornecedor”,
    insertable=true, updatable=true)
    @Fetch(FetchMode.JOIN)
    @Cascade(CascadeType.SAVE_UPDATE)
    private Fornecedor fornecedor;

    @Column(unique=false, nullable=false)
    private String status;

    public Produto() {
    }

    public Categoria getCategoria() {
    return categoria;
    }

    public void setCategoria(Categoria categoria) {
    this.categoria = categoria;
    }

    public Fornecedor getFornecedor() {
    return fornecedor;
    }

    public void setFornecedor(Fornecedor fornecedor) {
    this.fornecedor = fornecedor;
    }

    public Long getId() {
    return id;
    }

    public void setId(Long id) {
    this.id = id;
    }

    public String getMarca() {
    return marca;
    }

    public void setMarca(String marca) {
    this.marca = marca;
    }

    public String getModelo() {
    return modelo;
    }

    public void setModelo(String modelo) {
    this.modelo = modelo;
    }

    public String getNome() {
    return nome;
    }

    public void setNome(String nome) {
    this.nome = nome;
    }

    public int getQuantidade() {
    return quantidade;
    }

    public void setQuantidade(int quantidade) {
    this.quantidade = quantidade;
    }

    public String getStatus() {
    return status;
    }

    public void setStatus(String status) {
    this.status = status;
    }

    public double getVlcompra() {
    return vlcompra;
    }

    public void setVlcompra(double vlcompra) {
    this.vlcompra = vlcompra;
    }

    public double getVlvenda() {
    return vlvenda;
    }

    public void setVlvenda(double vlvenda) {
    this.vlvenda = vlvenda;
    }

}[/code]

Como eu posso implementar uma busca simples com essa estrutura ?

Olá

Só para confirmar. Não leio mensagens com títulos em maiúsculas porque acho que quem faz assim quer aparecer mais do que os outros. Para mim é como se fosse uma tentativa de furar fila.

[]s
Luca

Luca, o titulo em maiuscula nao foi pra chamar a atenção nao, tanto que ja mudei o titulo para o padrao aceito por voces.

Olá

Obrigado pelo favor que você fez ao véio… Sinto no momento estar enrolado e não poder ajudá-lo

[]s
Luca

Alguem poderia me ajudar ?