Erro na linha 62 ao tentar inserir registro

Alguem sabe que erro e esse?

Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: 2
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.clearParameter(JdbcOdbcPreparedStatement.java:1023)
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.setChar(JdbcOdbcPreparedStatement.java:3057)
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.setString(JdbcOdbcPreparedStatement.java:766)
at trabalho.PessoaDAO.inclua(PessoaDAO.java:62)

segue o codigo

[code]package trabalho;

// Data Access Object -> Objeto de Acesso a Dados

import genereico.AccessJDBCUtil;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

public class PessoaDAO {
// variavel para guardar a conexão com o BD
private Connection con;
// variavel para acessar o BD via SQL
private PreparedStatement ps;

public PessoaDAO(){
    try {
        con = AccessJDBCUtil.getAccessDBConnection("D:\Trabalho.mdb");
    } catch (SQLException ex) {
        ex.printStackTrace();
    }
}

public String obtemContatosComoString(){
    String str = "";
    try {
        ps = con.prepareStatement(
                " SELECT * FROM trabalho " +
                " ORDER BY codigo");
        ResultSet rs = ps.executeQuery();
        while(rs.next()){
            str += 
                   rs.getString("nome") +", "+
                   rs.getString("dataNasc")    +", "+
                   rs.getString("sexo") +", "+
                   rs.getString("cidade") +", "+
                   rs.getString("estado") +", "+
                   rs.getString("motivoDaMorte") +", "+
                   rs.getString("dataDaMorte") +", "+
                   rs.getString("dataDoEnterro")+"\n";

        }
    } catch (SQLException ex) {
        ex.printStackTrace();
    }

    return str;
}

public boolean inclua(Pessoa pessoa){
    boolean sucesso;
    try {
        ps = con.prepareStatement(
                " INSERT INTO trabalho " +
                " (nome,dataNasc,sexo,cidade,estado,motivoDaMorte,dataDaMorte,dataDoEntero) VALUES (?,?) ");
        
        ps.setString(1, pessoa.getNome());
        ps.setString(2, pessoa.getDataNasc());
        ps.setString(3, pessoa.getSexo());
        ps.setString(4, pessoa.getCidade());
        ps.setString(5, pessoa.getEstado());
        ps.setString(6, pessoa.getMotivoDaMorte());
        ps.setString(7, pessoa.getDataDaMorte());
        ps.setString(8, pessoa.getDataDoIntero());
        ps.executeUpdate();
        sucesso = true;
    } catch (SQLException ex) {
        ex.printStackTrace();
        sucesso = false;
    }
    return sucesso;
}

}[/code]

e o codigo da classe que vai dar o salvar pra inserir nova linha

[code]package trabalho;

import genereico.ManipulaTxt;
import javax.swing.JOptionPane;

public class Trabalho extends javax.swing.JFrame {

private String nomes, msg;

public Trabalho() {
    super("Funeraria Jesus Te Chama");
    initComponents();
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jLabel1 = new javax.swing.JLabel();
    nome = new javax.swing.JTextField();
    jLabel3 = new javax.swing.JLabel();
    dataNasc = new javax.swing.JTextField();
    jLabel4 = new javax.swing.JLabel();
    sexo = new javax.swing.JTextField();
    jLabel5 = new javax.swing.JLabel();
    cidade = new javax.swing.JTextField();
    jLabel6 = new javax.swing.JLabel();
    estado = new javax.swing.JTextField();
    jLabel7 = new javax.swing.JLabel();
    motivoDaMorte = new javax.swing.JTextField();
    jLabel8 = new javax.swing.JLabel();
    dataMorte = new javax.swing.JTextField();
    jLabel9 = new javax.swing.JLabel();
    dataEntero = new javax.swing.JTextField();
    jScrollPane1 = new javax.swing.JScrollPane();
    taDados = new javax.swing.JTextArea();
    btSalvar = new javax.swing.JButton();
    btExcluir = new javax.swing.JButton();
    btAlterar = new javax.swing.JButton();
    btSair = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jLabel1.setText("Nome");

    nome.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            nomeActionPerformed(evt);
        }
    });

    jLabel3.setText("Data Nasc");

    jLabel4.setText("Sexo");

    jLabel5.setText("Cidade");

    jLabel6.setText("Estado");

    jLabel7.setText("Causa da Morte");

    jLabel8.setText("Data Morte");

    jLabel9.setText("Data Enterro");

    taDados.setColumns(20);
    taDados.setRows(5);
    jScrollPane1.setViewportView(taDados);

    btSalvar.setText("Salvar");
    btSalvar.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btSalvarActionPerformed(evt);
        }
    });

    btExcluir.setText("Excluir");

    btAlterar.setText("Alterar");

    btSair.setText("Sair");
    btSair.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            btSairActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addGap(76, 76, 76)
                            .addComponent(jLabel3))
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jLabel1)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(nome, javax.swing.GroupLayout.PREFERRED_SIZE, 89, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(dataNasc, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(17, 17, 17)
                            .addComponent(jLabel4)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(sexo, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jLabel6)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(estado, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jLabel5)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(cidade, javax.swing.GroupLayout.PREFERRED_SIZE, 150, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jLabel8)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(dataMorte, javax.swing.GroupLayout.DEFAULT_SIZE, 67, Short.MAX_VALUE))
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jLabel9)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(dataEntero, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE))))
                .addGroup(layout.createSequentialGroup()
                    .addComponent(jLabel7)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addComponent(motivoDaMorte, javax.swing.GroupLayout.DEFAULT_SIZE, 367, Short.MAX_VALUE))
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 437, Short.MAX_VALUE))
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(btSalvar)
                    .addGap(18, 18, 18)
                    .addComponent(btExcluir)
                    .addGap(18, 18, 18)
                    .addComponent(btAlterar)
                    .addGap(18, 18, 18)
                    .addComponent(btSair)))
            .addContainerGap())
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel3)
                .addComponent(dataNasc, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(estado, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel6)
                .addComponent(sexo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel4)
                .addComponent(jLabel8)
                .addComponent(dataMorte, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel1)
                .addComponent(nome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(cidade, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel9)
                .addComponent(dataEntero, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel5))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jLabel7)
                .addComponent(motivoDaMorte, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGap(26, 26, 26)
            .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addGap(26, 26, 26)
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(btSalvar)
                .addComponent(btExcluir)
                .addComponent(btAlterar)
                .addComponent(btSair))
            .addContainerGap(57, Short.MAX_VALUE))
    );

    pack();
}// </editor-fold>                        

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

private void btSalvarActionPerformed(java.awt.event.ActionEvent evt) {                                         

    PessoaDAO dao = new PessoaDAO();
    Pessoa pessoa = new Pessoa();

    pessoa.setNome(nome.getText());
    pessoa.setDataNasc(dataNasc.getText());
    pessoa.setSexo(sexo.getText());
    pessoa.setCidade(cidade.getText());
    pessoa.setEstado(estado.getText());
    pessoa.setMotivoDaMorte(motivoDaMorte.getText());
    pessoa.setDataDaMorte(dataMorte.getText());
    pessoa.setDataDoIntero(dataEntero.getText());

    if (dao.inclua(pessoa)) {
        JOptionPane.showMessageDialog(this, pessoa.getNome() + " Incluido com sucesso!");
        nome.setText("");
        dataNasc.setText("");
        sexo.setText("");
        cidade.setText("");
        estado.setText("");
        motivoDaMorte.setText("");
        dataMorte.setText("");

    } else {
        JOptionPane.showMessageDialog(this, "Nao foi possivel incluir " + pessoa.getNome());
    }

    nomes =("nome: " + nome.getText()+"\n dataNasc: " + dataNasc.getText()+ "\n sexo: "+sexo.getText()+
            "\n cidade: " + cidade.getText()+"\n estado: "+estado.getText()+"\n motivoDaMorte: "+
            motivoDaMorte.getText()+"\n dataDaMorte: "+ dataMorte.getText()+"\n dataDoEnterro: "+dataEntero.getText());

            ManipulaTxt txt = new ManipulaTxt("D:\" + ".txt");
            txt.insereLinha(msg+"\n"+nomes,btSalvar.isSelected());

            JOptionPane.showMessageDialog(null,"Cliente cadastrado com susseso!!!");

}                                        

private void nomeActionPerformed(java.awt.event.ActionEvent evt) {                                     
    // TODO add your handling code here:
}                                    

public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {

        public void run() {
            new Trabalho().setVisible(true);
        }
    });
}
// Variables declaration - do not modify                     
private javax.swing.JButton btAlterar;
private javax.swing.JButton btExcluir;
private javax.swing.JButton btSair;
private javax.swing.JButton btSalvar;
private javax.swing.JTextField cidade;
private javax.swing.JTextField dataEntero;
private javax.swing.JTextField dataMorte;
private javax.swing.JTextField dataNasc;
private javax.swing.JTextField estado;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextField motivoDaMorte;
private javax.swing.JTextField nome;
private javax.swing.JTextField sexo;
private javax.swing.JTextArea taDados;
// End of variables declaration                   

}[/code]

[quote=eversonoro][code] ps = con.prepareStatement(
" INSERT INTO trabalho " +
" (nome,dataNasc,sexo,cidade,estado,motivoDaMorte,dataDaMorte,dataDoEntero) VALUES (?,?) ");

ps.setString(1, pessoa.getNome());
ps.setString(2, pessoa.getDataNasc());
ps.setString(3, pessoa.getSexo());
ps.setString(4, pessoa.getCidade());
ps.setString(5, pessoa.getEstado());
ps.setString(6, pessoa.getMotivoDaMorte());
ps.setString(7, pessoa.getDataDaMorte());
ps.setString(8, pessoa.getDataDoIntero());
[/code][/quote]
Estás a introduzir valores para 8 parâmetros da PreparedStatement mas apenas tens dois ? no SQL.