Vou Postar a minha classe para que vocês me ajudem! Por Favor.
public class ControleAcessoView extends javax.swing.JFrame {
/** Creates new form ControleAcessoView */
public ControleAcessoView() {
initComponents();
if (!Beans.isDesignTime()) {
entityManager.getTransaction().begin();
}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
bindingGroup = new org.jdesktop.beansbinding.BindingGroup();
entityManager = java.beans.Beans.isDesignTime() ? null : javax.persistence.Persistence.createEntityManagerFactory("siscomjavaPU").createEntityManager();
funcionarioQuery = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery("SELECT f FROM Funcionario f");
funcionarioList = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : org.jdesktop.observablecollections.ObservableCollections.observableList(funcionarioQuery.getResultList());
nivelAcessoQuery = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery("SELECT n FROM NivelAcesso n");
nivelAcessoList = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : org.jdesktop.observablecollections.ObservableCollections.observableList(nivelAcessoQuery.getResultList());
jPanel5 = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
DefaultMutableTreeNode pai = new DefaultMutableTreeNode("Prime - Sistema Comercial");
DefaultMutableTreeNode filho1 = new DefaultMutableTreeNode("Cadastro");
pai.add(filho1);
DefaultMutableTreeNode neto1 = new DefaultMutableTreeNode("Clientes");
filho1.add(neto1);
DefaultMutableTreeNode neto2 = new DefaultMutableTreeNode("Fornecedores");
filho1.add(neto2);
DefaultMutableTreeNode neto3 = new DefaultMutableTreeNode("Contas Bancárias");
filho1.add(neto3);
DefaultMutableTreeNode neto4 = new DefaultMutableTreeNode("Unidades");
filho1.add(neto4);
DefaultMutableTreeNode neto5 = new DefaultMutableTreeNode("Produtos");
filho1.add(neto5);
DefaultMutableTreeNode neto6 = new DefaultMutableTreeNode("Departamentos");
filho1.add(neto6);
DefaultMutableTreeNode neto7 = new DefaultMutableTreeNode("Funcionários");
filho1.add(neto7);
DefaultMutableTreeNode neto8 = new DefaultMutableTreeNode("Cartões");
filho1.add(neto8);
DefaultMutableTreeNode neto9 = new DefaultMutableTreeNode("Plano de Contas");
filho1.add(neto9);
DefaultMutableTreeNode neto10 = new DefaultMutableTreeNode("Tipo de Pgto / Rcbto");
filho1.add(neto10);
DefaultMutableTreeNode neto11 = new DefaultMutableTreeNode("Sair");
filho1.add(neto11);
DefaultMutableTreeNode filho2 = new DefaultMutableTreeNode("Movimento");
pai.add(filho2);
DefaultMutableTreeNode neto12 = new DefaultMutableTreeNode("Contas a Pagar");
filho2.add(neto12);
DefaultMutableTreeNode neto13 = new DefaultMutableTreeNode("Contas a Receber");
filho2.add(neto13);
DefaultMutableTreeNode neto14 = new DefaultMutableTreeNode("Vendas");
filho2.add(neto14);
DefaultMutableTreeNode neto15 = new DefaultMutableTreeNode("Orçamentos");
filho2.add(neto15);
//Sub-Menu de Movimento
DefaultMutableTreeNode neto16 = new DefaultMutableTreeNode("Controle de Estoque");
filho2.add(neto16);
//Sub-menu de Controle de Estoque
DefaultMutableTreeNode bisnetodeEstoque = new DefaultMutableTreeNode("Entrada de NF");
neto16.add(bisnetodeEstoque);
//Sub-menu de Controle de Estoque
DefaultMutableTreeNode bisnetodeEstoque2 = new DefaultMutableTreeNode("Atualização de Preços");
neto16.add(bisnetodeEstoque2);
//Sub-Menu de Movimento
DefaultMutableTreeNode neto17 = new DefaultMutableTreeNode("Compras");
filho2.add(neto17);
//Sub-menu de Compras
DefaultMutableTreeNode bisnetodeCompras = new DefaultMutableTreeNode("Requisição");
neto17.add(bisnetodeCompras);
//Sub-menu de Compras
DefaultMutableTreeNode bisnetodeCompras2 = new DefaultMutableTreeNode("Cotação");
neto17.add(bisnetodeCompras2);
//Sub-menu de Compras
DefaultMutableTreeNode bisnetodeCompras3 = new DefaultMutableTreeNode("Confirma Cotação");
neto17.add(bisnetodeCompras3);
//Sub-menu de Compras
DefaultMutableTreeNode bisnetodeCompras4 = new DefaultMutableTreeNode("Pedido");
neto17.add(bisnetodeCompras4);
//Sub-Menu de Movimento
DefaultMutableTreeNode neto18 = new DefaultMutableTreeNode("Tesouraria e Banco");
filho2.add(neto18);
//Sub-menu de Tesouraria e Banco
DefaultMutableTreeNode bisnetodeTesourariaBanco = new DefaultMutableTreeNode("Emissão de Cheques");
neto18.add(bisnetodeTesourariaBanco);
//Sub-menu de Tesouraria e Banco
DefaultMutableTreeNode bisnetodeTesourariaBanco2 = new DefaultMutableTreeNode("Conciliação de Cheques");
neto18.add(bisnetodeTesourariaBanco2);
//Sub-menu de Tesouraria e Banco
DefaultMutableTreeNode bisnetodeTesourariaBanco3 = new DefaultMutableTreeNode("Movimento de Banco");
neto18.add(bisnetodeTesourariaBanco3);
DefaultMutableTreeNode filho3 = new DefaultMutableTreeNode("Utilitários");
pai.add(filho3);
DefaultMutableTreeNode neto19 = new DefaultMutableTreeNode("Calculadora");
filho3.add(neto19);
DefaultMutableTreeNode neto20 = new DefaultMutableTreeNode("Calendário");
filho3.add(neto20);
//Sub-Menu de Utilitários
DefaultMutableTreeNode neto21 = new DefaultMutableTreeNode("Sistema de Segurança");
filho3.add(neto21);
//Sub-menu de Sistema de Segurança
DefaultMutableTreeNode bisnetodeSistemaSegurança = new DefaultMutableTreeNode("Definir Nível de Acesso");
neto21.add(bisnetodeSistemaSegurança);
//Sub-menu de Sistema de Segurança
DefaultMutableTreeNode bisnetodeSistemaSegurança2 = new DefaultMutableTreeNode("Trocar Senha Corrente");
neto21.add(bisnetodeSistemaSegurança2);
DefaultMutableTreeNode filho4 = new DefaultMutableTreeNode("Ajuda");
pai.add(filho4);
DefaultMutableTreeNode neto22 = new DefaultMutableTreeNode("Conteúdo");
filho4.add(neto22);
DefaultMutableTreeNode neto23 = new DefaultMutableTreeNode("Sobre o Sistema");
filho4.add(neto23);
jTree1 = new javax.swing.JTree(pai);
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jPanel1 = new javax.swing.JPanel();
jScrollPane2 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jPanel2 = new javax.swing.JPanel();
jScrollPane3 = new javax.swing.JScrollPane();
jTable2 = new javax.swing.JTable();
jButton4 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Controle de Acesso");
jScrollPane1.setViewportView(jTree1);
jButton1.setText("Conceder");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("Retirar");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jButton3.setText("Fechar");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Funcionário"));
org.jdesktop.swingbinding.JTableBinding jTableBinding = org.jdesktop.swingbinding.SwingBindings.createJTableBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, funcionarioList, jTable1);
org.jdesktop.swingbinding.JTableBinding.ColumnBinding columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${codFuncionario}"));
columnBinding.setColumnName("Cod Funcionario");
columnBinding.setColumnClass(Integer.class);
columnBinding.setEditable(false);
columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${nomeFuncionario}"));
columnBinding.setColumnName("Nome Funcionario");
columnBinding.setColumnClass(String.class);
columnBinding.setEditable(false);
columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${loginFuncionario}"));
columnBinding.setColumnName("Login Funcionario");
columnBinding.setColumnClass(String.class);
columnBinding.setEditable(false);
bindingGroup.addBinding(jTableBinding);
jTableBinding.bind();
jScrollPane2.setViewportView(jTable1);
jTable1.getColumnModel().getColumn(0).setResizable(false);
jTable1.getColumnModel().getColumn(0).setPreferredWidth(50);
jTable1.getColumnModel().getColumn(1).setResizable(false);
jTable1.getColumnModel().getColumn(2).setResizable(false);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 358, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 64, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Nivel de Acesso"));
jTableBinding = org.jdesktop.swingbinding.SwingBindings.createJTableBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, nivelAcessoList, jTable2);
columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${codFunc}"));
columnBinding.setColumnName("Cod Func");
columnBinding.setColumnClass(Integer.class);
columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${nomeModulo}"));
columnBinding.setColumnName("Nome Modulo");
columnBinding.setColumnClass(String.class);
bindingGroup.addBinding(jTableBinding);
jTableBinding.bind();org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, jTable1, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.codFuncionario}"), jTable2, org.jdesktop.beansbinding.BeanProperty.create("selectedElements"));
bindingGroup.addBinding(binding);
jScrollPane3.setViewportView(jTable2);
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 255, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jButton4.setText("Salvar");
jButton4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton4ActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
jPanel5.setLayout(jPanel5Layout);
jPanel5Layout.setHorizontalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 252, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addGap(18, 18, 18)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel5Layout.createSequentialGroup()
.addGap(77, 77, 77)
.addComponent(jButton1)
.addGap(26, 26, 26)
.addComponent(jButton2)
.addGap(31, 31, 31)
.addComponent(jButton3))
.addGroup(jPanel5Layout.createSequentialGroup()
.addGap(29, 29, 29)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel5Layout.createSequentialGroup()
.addGap(158, 158, 158)
.addComponent(jButton4)))
.addGap(18, 18, 18))
);
jPanel5Layout.setVerticalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 401, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jPanel5Layout.createSequentialGroup()
.addGap(13, 13, 13)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton1)
.addComponent(jButton2)
.addComponent(jButton3))
.addGap(29, 29, 29)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jButton4)))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
bindingGroup.bind();
pack();
}// </editor-fold>//GEN-END:initComponents
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
//JOptionPane.showMessageDialog(null, jTree1.getLastSelectedPathComponent());
NivelAcesso ne = new NivelAcesso();
entityManager.persist(ne);
int index = jTable1.getSelectedRow();
ne.setCodFunc(funcionarioList.get(index).getCodFuncionario());
ne.setNomeModulo( jTree1.getLastSelectedPathComponent().toString());
nivelAcessoList.add(ne);
}//GEN-LAST:event_jButton1ActionPerformed
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
dispose();
}//GEN-LAST:event_jButton3ActionPerformed
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
int index = jTable2.getSelectedRow();
nivelAcessoList.remove(index);
}//GEN-LAST:event_jButton2ActionPerformed
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed
try {
entityManager.getTransaction().commit();
entityManager.getTransaction().begin();
} catch (Exception e) {
e.printStackTrace();
}
}//GEN-LAST:event_jButton4ActionPerformed
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new ControleAcessoView().setVisible(true);
}
});
}
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.persistence.EntityManager entityManager;
private java.util.List<prime.bean.Funcionario> funcionarioList;
private javax.persistence.Query funcionarioQuery;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel5;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane3;
private javax.swing.JTable jTable1;
private javax.swing.JTable jTable2;
private javax.swing.JTree jTree1;
private java.util.List<prime.bean.NivelAcesso> nivelAcessoList;
private javax.persistence.Query nivelAcessoQuery;
private org.jdesktop.beansbinding.BindingGroup bindingGroup;
// End of variables declaration//GEN-END:variables
}