Classe não retorna dados do banco

Não consigo encontrar o erro.Agradeço quem ajudar.

[code]

package vendas;

import java.util.List;
import javax.swing.JOptionPane;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import sisvenda.fornecedores.FornecedorBean;
import sisvenda.fornecedores.FornecedorControl;
import sisvenda.produtos.ProdutoBean;
import sisvenda.produtos.ProdutoControl;

/**
*

  • @author Susi Lene
    */
    public class Produtos extends javax.swing.JFrame {

    DefaultTableModel tmProdutos = new DefaultTableModel(null, new String[] {“Código”, “Cód. Fornec.”, “Nome”, “Valor”, “Qtde Estoque”});
    ListSelectionModel lsmProdutos;
    List produtos;
    List fornecedores;

    /** Creates new form Produtos */
    public Produtos() {
    initComponents();
    fornecedores = new FornecedorControl().listarFornecedores("%%");
    System.out.println(fornecedores.size());
    cbFornecedores.removeAllItems();
    for (int i = 0; i < fornecedores.size(); i++){
    cbFornecedores.addItem(fornecedores.get(i).getNome());
    }
    }

    private void btPesquisaProdutoActionPerformed(java.awt.event.ActionEvent evt) {
    listarProdutos();
    }

    protected void listarProdutos(){
    ProdutoControl prd = new ProdutoControl();
    produtos = prd.listarProdutos("%" + tfPesquisaProduto.getText().trim() + “%”);
    mostrarProdutos(produtos);
    }
    protected void mostrarProdutos(List produtos){
    while (tmProdutos.getRowCount() > 0){
    tmProdutos.removeRow(0);
    }

     if (produtos.size() == 0){
         JOptionPane.showMessageDialog(this, "Nenhum produto encontrado!");
     }else{
         String [] campos = new String[] {null, null, null, null};
         for (int i = 0; i < produtos.size(); i++){
             tmProdutos.addRow(campos);
             tmProdutos.setValueAt(produtos.get(i).getCodigo(), i, 0);
             tmProdutos.setValueAt(produtos.get(i).getFornecedores_Codigo(), i, 1);
             tmProdutos.setValueAt(produtos.get(i).getNome(), i, 2);
             tmProdutos.setValueAt(produtos.get(i).getValorItem(), i, 3);
             tmProdutos.setValueAt(produtos.get(i).getEstoque(), i, 4);
         }
     }
    

    }
    private void btFecharActionPerformed(java.awt.event.ActionEvent evt) {
    this.dispose();
    }

    private void btExcluirActionPerformed(java.awt.event.ActionEvent evt) {
    excluirProduto();
    }

    private void excluirProduto(){
    if (tbProdutos.getSelectedRow() != -1){
    int resposta = JOptionPane.showConfirmDialog(this, “Excluir produto selecionado?”, “Confirmação”,
    JOptionPane.YES_NO_OPTION);
    if (resposta == JOptionPane.YES_OPTION){
    ProdutoControl pc = new ProdutoControl();
    pc.excluirProduto(produtos.get(tbProdutos.getSelectedRow()).getCodigo());
    JOptionPane.showMessageDialog(this, “Produto excluido com sucesso!”);
    }
    }
    }
    private void btAlterarActionPerformed(java.awt.event.ActionEvent evt) {
    alterarProduto();
    }

    private void alterarProduto(){
    if (tbProdutos.getSelectedRow() != -1){
    if (! verificaNome()){
    JOptionPane.showMessageDialog(this, “Informe o nome do produto!”);
    tfNome.requestFocus();
    } else if (! verificaValor()){
    JOptionPane.showMessageDialog(this, “Valor inválido!”);
    tfValor.requestFocus();
    } else if (! verificaEstoque()){
    JOptionPane.showMessageDialog(this, “Valor do estoque inválido!”);
    tfEstoque.requestFocus();
    } else {
    ProdutoControl pc = new ProdutoControl();
    ProdutoBean produto = new ProdutoBean();
    produto.setCodigo(produtos.get(tbProdutos.getSelectedRow()).getCodigo());
    produto.setFornecedores_Codigo(fornecedores.get(cbFornecedores.getSelectedIndex()).getCodigo());
    System.out.println(fornecedores.get(cbFornecedores.getSelectedIndex()).getCodigo());
    produto.setNome(tfNome.getText());
    produto.setValorItem(Double.parseDouble(tfValor.getText().trim()));
    produto.setEstoque(Integer.parseInt(tfEstoque.getText().trim()));
    pc.alterarProduto(produto);
    JOptionPane.showMessageDialog(this, “Produto alterado com sucesso!”);
    }
    } else{
    JOptionPane.showMessageDialog(this, “Selecione um produto!”);
    }
    }

    private void btNovoActionPerformed(java.awt.event.ActionEvent evt) {
    novoProduto();
    }

    private void novoProduto(){
    if (! verificaNome()){
    JOptionPane.showMessageDialog(this, “Informe o nome do produto!”);
    tfNome.requestFocus();
    } else if (! verificaValor()){
    JOptionPane.showMessageDialog(this, “Valor inválido!”);
    tfValor.requestFocus();
    } else if (! verificaEstoque()){
    JOptionPane.showMessageDialog(this, “Valor do estoque inválido!”);
    tfEstoque.requestFocus();
    } else {
    cadastraProduto();
    }
    }

    private void cadastraProduto(){
    ProdutoControl pc = new ProdutoControl();
    ProdutoBean produto = new ProdutoBean();
    produto.setFornecedores_Codigo(fornecedores.get(cbFornecedores.getSelectedIndex()).getCodigo());
    produto.setNome(tfNome.getText());
    produto.setValorItem(Double.parseDouble(tfValor.getText()));
    produto.setEstoque(Integer.parseInt(tfEstoque.getText()));
    pc.cadastrarProduto(produto);
    JOptionPane.showMessageDialog(this, “Produto cadastrado com sucesso!”);
    }

    private boolean verificaEstoque(){
    if (tfEstoque.getText().trim().equals("")){
    return false;
    } else {
    try {
    int estoque = Integer.parseInt(tfEstoque.getText().trim());
    } catch (NumberFormatException ex) {
    ex.printStackTrace();
    return false;
    }
    }
    int estoque = Integer.parseInt(tfEstoque.getText().trim());
    if (estoque < 0){
    return false;
    }
    return true;
    }

    private boolean verificaValor(){
    if (tfValor.getText().trim().equals("")){
    return false;
    } else {
    try {
    double valor = Double.parseDouble(tfValor.getText().trim());
    } catch (NumberFormatException ex) {
    ex.printStackTrace();
    return false;
    }
    }
    return true;
    }

    private boolean verificaNome() {
    if (tfNome.getText().trim().equals(""))
    return false;
    return true;
    }

    /**

    • @param args the command line arguments
      */
      public static void main(String args[]) {
      java.awt.EventQueue.invokeLater(new Runnable() {
      public void run() {
      new Produtos().setVisible(true);
      }
      });
      }

    private void tbProdutosLinhaSelecionada(){
    if (tbProdutos.getSelectedRow() != -1){
    tfNome.setText(produtos.get(tbProdutos.getSelectedRow()).getNome());
    tfValor.setText(String.valueOf(produtos.get(tbProdutos.getSelectedRow()).getValorItem()));
    tfEstoque.setText(String.valueOf(produtos.get(tbProdutos.getSelectedRow()).getEstoque()));
    selecionaFornecedor(produtos.get(tbProdutos.getSelectedRow()).getFornecedores_Codigo());
    } else {
    tfNome.setText("");
    tfValor.setText("");
    tfEstoque.setText("");
    }
    }

    private String formatValue(String value) {
    value = value.replace(’.’, ‘,’);
    if (value.charAt(value.length() - 2) == ‘,’) {
    value = value + “0”;
    }
    if (value.indexOf(",") != value.length() - 3) {
    value = value.substring(0, value.indexOf(",") + 2);
    }
    return value;
    }

    private void selecionaFornecedor(int codigoFornecedor){
    for (int i = 0; i < fornecedores.size(); i++){
    if (fornecedores.get(i).getCodigo() == codigoFornecedor){
    cbFornecedores.setSelectedIndex(i);
    return;
    }
    }
    }
    [/code]