Estou desenvolvendo um software para uma videolocadora com design pattern MVC (Model-view-controller) e está ocorrendo o problema de não chamar o método salvar() dentro do If e Else pois se eu não chamar o método salvar dentro não consigo salvar e nem alterar os dados da minha pessoa. Já tentei varias formas e não consegui encontra a solução…e alguém aí poderia me ajudar ? Desde já, agradeço !
Classe VideoPessoa, da camada view:
[code]package view;
// A maioria das importaçoes fica “importação não utilizada”
import controller.PessoaController;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.RowFilter;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
import model.Pessoa;
import util.Conexao;
import util.OPDatas;
/**
*
-
@author Aluno3
*/
public class VideoPessoa extends javax.swing.JFrame {PessoaController pessoaController;
Pessoa pessoa;
String tipoCadastro;/**
-
Creates new form Pessoa
*/
public VideoPessoa() {
initComponents();new Conexao();
pessoaController = new PessoaController();
pessoa = new Pessoa();
this.carregarPessoas();// Aqui da erro
this.novaPessoa();// Aqui da erro
this.habilitarCampos();// Aqui da erro
}
[/code] -
Botão de salvar e o botão de alterar, dentro da camada view:
[code]private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if (tipoCadastro.equals("novo")){
salvarCliente();// Aqui dá erro!
} else if(tipoCadastro.equals("alteracao")){
alteraCliente(); // Aqui da erro também!
}
}
}
private void btnAlterarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
novaPessoa();
habilitarCampos();
recuperarPessoas();
tipoCadastro = "alteracao";
} [/code]
Metódo alterar e salvar, dentro da camada view:
[code]private boolean salvarPessoa() {
pessoa.setNome(txtNome.getText());
pessoa.setEndereco(txtEndereco.getText());
pessoa.setBairro(txtBairro.getText());
pessoa.setCPF(txtCPF.getText());
pessoa.setSexo(txtSexo.getText());
pessoa.setUf(txtUF.getText());
pessoa.setCelular(txtCelular.getText());
pessoa.setTelefone(txtTelefone.getText());
pessoa.setCidade(txtCidade.getText());
Integer codigo = pessoa.getCodigo();
String nome = pessoa.getNome();
JOptionPane.showMessageDialog(this, “Código:”+codigo+ “nome:”+nome);
if (pessoaController.salvar(pessoa)) {
JOptionPane.showMessageDialog(this, "Registro gravado com sucesso!");
this.desabilitarCampos();
this.carregarPessoas();
return true;
} else {
JOptionPane.showMessageDialog(this, "Erro ao gravar os dados!", "ERRO", JOptionPane.ERROR_MESSAGE);
return false;
}
}
public boolean alterarPessoa() {
pessoa.setCodigo( Integer.parseInt(this.txtCodigo.getText()));
pessoa.setNome(this.txtNome.getText());
pessoa.setEndereco(this.txtEndereco.getText());
pessoa.setBairro(this.txtBairro.getText());
pessoa.setCPF(this.txtCPF.getText());
pessoa.setSexo(this.txtSexo.getText());
pessoa.setUf(this.txtUF.getText());
pessoa.setCelular(this.txtCelular.getText());
pessoa.setTelefone(this.txtTelefone.getText());
pessoa.setCidade(this.txtCidade.getText());
Integer codigo = pessoa.getCodigo();
String nome = pessoa.getNome();
JOptionPane.showMessageDialog(this, “Código:”+codigo+ “nome:”+nome);
if (pessoaController.alterar(pessoa)) {
JOptionPane.showMessageDialog(this, "Registro alterado com sucesso!");
this.desabilitarCampos();
this.carregarPessoas();
return true;
} else {
JOptionPane.showMessageDialog(this, "Erro ao alterar os dados!", "ERRO", JOptionPane.ERROR_MESSAGE);
return false;
}
}
private void habilitarCampos() {
txtNome.setEditable(true);
txtEndereco.setEditable(true);
txtBairro.setEditable(true);
txtCidade.setEditable(true);
txtCPF.setEditable(true);
txtUF.setEditable(true);
txtTelefone.setEditable(true);
txtCelular.setEditable(true);
txtSexo.setEditable(true);
btnSalvar.setEnabled(true);
}
private void novaPessoa(){
habilitarCampos();
txtCodigo.setText("Novo");
txtNome.setText("");
txtEndereco.setText("");
txtBairro.setText("");
txtCidade.setText("");
txtCPF.setText("");
txtUF.setText("");
txtTelefone.setText("");
txtCelular.setText("");
txtSexo.setText("");
tipoCadastro = "novo";
}
protected void desabilitarCampos() {
txtNome.setEditable(false);
txtEndereco.setEditable(false);
txtBairro.setEditable(false);
txtCidade.setEditable(false);
txtCPF.setEditable(false);
txtUF.setEditable(false);
txtTelefone.setEditable(false);
txtCelular.setEditable(false);
txtSexo.setEditable(false);
btnSalvar.setEnabled(false);
}
private void carregarPessoas() {
DefaultTableModel tabela = (DefaultTableModel) tblPessoa.getModel();
tabela.setNumRows(0);
List<Pessoa> pessoas = pessoaController.listar();
Pessoa pessoa = null;
for (int i = 0; i < pessoas.size(); i++) {
pessoa = pessoas.get(i);
tabela.addRow(new Object[]{0});
tabela.setValueAt(pessoa.getCodigo(), i, 0);
tabela.setValueAt(pessoa.getCPF(), i, 1);
tabela.setValueAt(pessoa.getNome(), i, 2);
tabela.setValueAt(pessoa.getCidade(), i, 3);
tabela.setValueAt(pessoa.getTelefone(), i, 4);
}
tblPessoa.setModel(tabela);
}
[/code]