Creo haber terminado con los mantenedores

This commit is contained in:
Daniel Cortés
2019-06-17 21:44:34 -04:00
parent 7d5dea7d03
commit 56cbb1fdeb
14 changed files with 197 additions and 196 deletions

View File

@@ -8,6 +8,7 @@
<option value="noActionIfCompileErrors" /> <option value="noActionIfCompileErrors" />
<option value="organizeImports" /> <option value="organizeImports" />
<option value="reformat" /> <option value="reformat" />
<option value="rearrange" />
<option value="unqualifiedFieldAccess" /> <option value="unqualifiedFieldAccess" />
<option value="unqualifiedMethodAccess" /> <option value="unqualifiedMethodAccess" />
<option value="missingOverrideAnnotation" /> <option value="missingOverrideAnnotation" />

View File

@@ -24,30 +24,6 @@ public abstract class AbstractTelefonoUpdateController extends BaseController {
this.setupListeners(); this.setupListeners();
} }
@Override
public LaunchController getParentController() {
return this.parentController;
}
@Override
public void show() {
this.view.getTelefonoField().requestFocus();
this.fillTelefono();
}
@Override
public BasePanel getView() {
return this.view;
}
public void setTelefono(Telefono telefono) {
this.telefono = telefono;
}
protected void fillTelefono() {
this.view.getTelefonoField().setText(this.telefono.getNumero());
}
protected void setupListeners() { protected void setupListeners() {
this.view.getTelefonoField().addActionListener(e -> this.update()); this.view.getTelefonoField().addActionListener(e -> this.update());
this.view.getActualizarButton().addActionListener(e -> this.update()); this.view.getActualizarButton().addActionListener(e -> this.update());
@@ -75,4 +51,28 @@ public abstract class AbstractTelefonoUpdateController extends BaseController {
} }
protected abstract void volver(); protected abstract void volver();
@Override
public LaunchController getParentController() {
return this.parentController;
}
@Override
public void show() {
this.view.getTelefonoField().requestFocus();
this.fillTelefono();
}
@Override
public BasePanel getView() {
return this.view;
}
protected void fillTelefono() {
this.view.getTelefonoField().setText(this.telefono.getNumero());
}
public void setTelefono(Telefono telefono) {
this.telefono = telefono;
}
} }

View File

@@ -36,16 +36,6 @@ public class ClienteSearchController extends BaseController {
this.setupListeners(); this.setupListeners();
} }
@Override
public void show() {
this.reload();
this.view.getClienteTable().clearSelection();
}
private void reload() {
this.loadClienteTable();
}
private void setupListeners() { private void setupListeners() {
this.view.getCrearButton().addActionListener(e -> this.getParentController().showCard(PanelName.CLIENTE_CREATE)); this.view.getCrearButton().addActionListener(e -> this.getParentController().showCard(PanelName.CLIENTE_CREATE));
this.view.getSearchField().addActionListener(e -> this.search()); this.view.getSearchField().addActionListener(e -> this.search());
@@ -55,6 +45,21 @@ public class ClienteSearchController extends BaseController {
this.view.getEliminarButton().addActionListener(e -> this.delete()); this.view.getEliminarButton().addActionListener(e -> this.delete());
} }
private void search() {
String term = this.view.getSearchField().getText();
List<Cliente> clientees = this.clienteRespository.search(term);
this.loadClienteTable(clientees);
}
private void view() {
Cliente cliente = this.getSelectedCliente();
if (cliente != null) {
ClienteViewController controller = (ClienteViewController) this.getParentController().getCard(PanelName.CLIENTE_VIEW);
controller.setCliente(cliente);
this.getParentController().showCard(PanelName.CLIENTE_VIEW);
}
}
private void edit() { private void edit() {
Cliente cliente = this.getSelectedCliente(); Cliente cliente = this.getSelectedCliente();
if (cliente != null) { if (cliente != null) {
@@ -87,26 +92,6 @@ public class ClienteSearchController extends BaseController {
this.reload(); this.reload();
} }
private void view() {
Cliente cliente = this.getSelectedCliente();
if (cliente != null) {
ClienteViewController controller = (ClienteViewController) this.getParentController().getCard(PanelName.CLIENTE_VIEW);
controller.setCliente(cliente);
this.getParentController().showCard(PanelName.CLIENTE_VIEW);
}
}
private void search() {
String term = this.view.getSearchField().getText();
List<Cliente> clientees = this.clienteRespository.search(term);
this.loadClienteTable(clientees);
}
private void loadClienteTable() {
List<Cliente> clientees = this.clienteRespository.getAll();
this.loadClienteTable(clientees);
}
private void loadClienteTable(List<Cliente> clientees) { private void loadClienteTable(List<Cliente> clientees) {
BaseTableModel<Cliente> model = this.view.getClienteModel(); BaseTableModel<Cliente> model = this.view.getClienteModel();
model.setRows(clientees); model.setRows(clientees);
@@ -126,6 +111,21 @@ public class ClienteSearchController extends BaseController {
return this.view.getClienteModel().getRow(selectedRow); return this.view.getClienteModel().getRow(selectedRow);
} }
private void reload() {
this.loadClienteTable();
}
private void loadClienteTable() {
List<Cliente> clientees = this.clienteRespository.getAll();
this.loadClienteTable(clientees);
}
@Override
public void show() {
this.reload();
this.view.getClienteTable().clearSelection();
}
@Override @Override
public BasePanel getView() { public BasePanel getView() {
return this.view; return this.view;

View File

@@ -22,15 +22,6 @@ public class ClienteViewController extends BaseController {
this.setupListeners(); this.setupListeners();
} }
@Override
public void show() {
this.fillCliente();
}
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
private void setupListeners() { private void setupListeners() {
this.view.getVolverButton().addActionListener(e -> this.getParentController().showCard(PanelName.CLIENTE_SEARCH)); this.view.getVolverButton().addActionListener(e -> this.getParentController().showCard(PanelName.CLIENTE_SEARCH));
this.view.getCorreosButton().addActionListener(e -> this.gotoCorreosView()); this.view.getCorreosButton().addActionListener(e -> this.gotoCorreosView());
@@ -38,11 +29,10 @@ public class ClienteViewController extends BaseController {
this.view.getDireccionesButton().addActionListener(e -> this.gotoDireccionView()); this.view.getDireccionesButton().addActionListener(e -> this.gotoDireccionView());
} }
private void gotoDireccionView() { private void gotoCorreosView() {
ClienteDireccionSearchController controller = (ClienteDireccionSearchController) this.getParentController() ClienteCorreoSearchController controller = (ClienteCorreoSearchController) this.getParentController().getCard(PanelName.CLIENTE_CORREO_SEARCH);
.getCard(PanelName.CLIENTE_DIRECCION_SEARCH);
controller.setCliente(this.cliente); controller.setCliente(this.cliente);
this.getParentController().showCard(PanelName.CLIENTE_DIRECCION_SEARCH); this.getParentController().showCard(PanelName.CLIENTE_CORREO_SEARCH);
} }
private void gotoTelefonoView() { private void gotoTelefonoView() {
@@ -52,10 +42,16 @@ public class ClienteViewController extends BaseController {
this.getParentController().showCard(PanelName.CLIENTE_TELEFONO_SEARCH); this.getParentController().showCard(PanelName.CLIENTE_TELEFONO_SEARCH);
} }
private void gotoCorreosView() { private void gotoDireccionView() {
ClienteCorreoSearchController controller = (ClienteCorreoSearchController) this.getParentController().getCard(PanelName.CLIENTE_CORREO_SEARCH); ClienteDireccionSearchController controller = (ClienteDireccionSearchController) this.getParentController()
.getCard(PanelName.CLIENTE_DIRECCION_SEARCH);
controller.setCliente(this.cliente); controller.setCliente(this.cliente);
this.getParentController().showCard(PanelName.CLIENTE_CORREO_SEARCH); this.getParentController().showCard(PanelName.CLIENTE_DIRECCION_SEARCH);
}
@Override
public void show() {
this.fillCliente();
} }
private void fillCliente() { private void fillCliente() {
@@ -73,4 +69,8 @@ public class ClienteViewController extends BaseController {
public BasePanel getView() { public BasePanel getView() {
return this.view; return this.view;
} }
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
} }

View File

@@ -29,10 +29,6 @@ public class ClienteTelefonoSearchController extends AbstractTelefonoSearchContr
return this.view; return this.view;
} }
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
@Override @Override
protected void create() { protected void create() {
ClienteTelefonoCreateController controller = (ClienteTelefonoCreateController) this.getParentController() ClienteTelefonoCreateController controller = (ClienteTelefonoCreateController) this.getParentController()
@@ -106,4 +102,8 @@ public class ClienteTelefonoSearchController extends AbstractTelefonoSearchContr
this.loadTelefonosTable(telefonos); this.loadTelefonosTable(telefonos);
} }
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
} }

View File

@@ -37,16 +37,6 @@ public class DistribuidorSearchController extends BaseController {
this.setupListeners(); this.setupListeners();
} }
@Override
public void show() {
this.reload();
this.view.getDistribuidorTable().clearSelection();
}
private void reload() {
this.loadDistribuidorTable();
}
private void setupListeners() { private void setupListeners() {
this.view.getCrearButton().addActionListener(e -> this.getParentController().showCard(PanelName.DISTRIBUIDOR_CREATE)); this.view.getCrearButton().addActionListener(e -> this.getParentController().showCard(PanelName.DISTRIBUIDOR_CREATE));
this.view.getSearchField().addActionListener(e -> this.search()); this.view.getSearchField().addActionListener(e -> this.search());
@@ -56,6 +46,21 @@ public class DistribuidorSearchController extends BaseController {
this.view.getEliminarButton().addActionListener(e -> this.delete()); this.view.getEliminarButton().addActionListener(e -> this.delete());
} }
private void search() {
String term = this.view.getSearchField().getText();
List<Distribuidor> distribuidores = this.distribuidorRepository.search(term);
this.loadDistribuidorTable(distribuidores);
}
private void view() {
Distribuidor distribuidor = this.getSelectedDistribuidor();
if (distribuidor != null) {
DistribuidorViewController controller = (DistribuidorViewController) this.getParentController().getCard(PanelName.DISTRIBUIDOR_VIEW);
controller.setDistribuidor(distribuidor);
this.getParentController().showCard(PanelName.DISTRIBUIDOR_VIEW);
}
}
private void edit() { private void edit() {
Distribuidor distribuidor = this.getSelectedDistribuidor(); Distribuidor distribuidor = this.getSelectedDistribuidor();
if (distribuidor != null) { if (distribuidor != null) {
@@ -88,26 +93,6 @@ public class DistribuidorSearchController extends BaseController {
this.reload(); this.reload();
} }
private void view() {
Distribuidor distribuidor = this.getSelectedDistribuidor();
if (distribuidor != null) {
DistribuidorViewController controller = (DistribuidorViewController) this.getParentController().getCard(PanelName.DISTRIBUIDOR_VIEW);
controller.setDistribuidor(distribuidor);
this.getParentController().showCard(PanelName.DISTRIBUIDOR_VIEW);
}
}
private void search() {
String term = this.view.getSearchField().getText();
List<Distribuidor> distribuidores = this.distribuidorRepository.search(term);
this.loadDistribuidorTable(distribuidores);
}
private void loadDistribuidorTable() {
List<Distribuidor> distribuidores = this.distribuidorRepository.getAll();
this.loadDistribuidorTable(distribuidores);
}
private void loadDistribuidorTable(List<Distribuidor> distribuidores) { private void loadDistribuidorTable(List<Distribuidor> distribuidores) {
BaseTableModel<Distribuidor> model = this.view.getDistribuidorModel(); BaseTableModel<Distribuidor> model = this.view.getDistribuidorModel();
model.setRows(distribuidores); model.setRows(distribuidores);
@@ -127,6 +112,21 @@ public class DistribuidorSearchController extends BaseController {
return this.view.getDistribuidorModel().getRow(selectedRow); return this.view.getDistribuidorModel().getRow(selectedRow);
} }
private void reload() {
this.loadDistribuidorTable();
}
private void loadDistribuidorTable() {
List<Distribuidor> distribuidores = this.distribuidorRepository.getAll();
this.loadDistribuidorTable(distribuidores);
}
@Override
public void show() {
this.reload();
this.view.getDistribuidorTable().clearSelection();
}
@Override @Override
public BasePanel getView() { public BasePanel getView() {
return this.view; return this.view;

View File

@@ -25,11 +25,6 @@ public class TrabajadorCreateController extends BaseController {
this.setupListeners(); this.setupListeners();
} }
@Override
public void show() {
this.view.getRutField().requestFocus();
}
private void setupListeners() { private void setupListeners() {
this.view.getGuardarButton().addActionListener(e -> this.save()); this.view.getGuardarButton().addActionListener(e -> this.save());
this.view.getVolverButton().addActionListener(e -> this.getParentController().showCard(PanelName.TRABAJADOR_SEARCH)); this.view.getVolverButton().addActionListener(e -> this.getParentController().showCard(PanelName.TRABAJADOR_SEARCH));
@@ -83,6 +78,11 @@ public class TrabajadorCreateController extends BaseController {
this.getParentController().showCard(PanelName.TRABAJADOR_SEARCH); this.getParentController().showCard(PanelName.TRABAJADOR_SEARCH);
} }
@Override
public void show() {
this.view.getRutField().requestFocus();
}
@Override @Override
public BasePanel getView() { public BasePanel getView() {
return this.view; return this.view;

View File

@@ -43,16 +43,6 @@ public class TrabajadorSearchController extends BaseController {
this.setupListeners(); this.setupListeners();
} }
@Override
public void show() {
this.reload();
this.view.getTrabajadorTable().clearSelection();
}
private void reload() {
this.loadTrabajadorTable();
}
private void setupListeners() { private void setupListeners() {
this.view.getCrearButton().addActionListener(e -> this.getParentController().showCard(PanelName.TRABAJADOR_CREATE)); this.view.getCrearButton().addActionListener(e -> this.getParentController().showCard(PanelName.TRABAJADOR_CREATE));
this.view.getSearchField().addActionListener(e -> this.search()); this.view.getSearchField().addActionListener(e -> this.search());
@@ -62,6 +52,21 @@ public class TrabajadorSearchController extends BaseController {
this.view.getEliminarButton().addActionListener(e -> this.delete()); this.view.getEliminarButton().addActionListener(e -> this.delete());
} }
private void search() {
String term = this.view.getSearchField().getText();
List<Trabajador> trabajadores = this.trabajadorRespository.search(term);
this.loadTrabajadorTable(trabajadores);
}
private void view() {
Trabajador trabajador = this.getSelectedTrabajador();
if (trabajador != null) {
TrabajadorViewController controller = (TrabajadorViewController) this.getParentController().getCard(PanelName.TRABAJADOR_VIEW);
controller.setTrabajador(trabajador);
this.getParentController().showCard(PanelName.TRABAJADOR_VIEW);
}
}
private void edit() { private void edit() {
Trabajador trabajador = this.getSelectedTrabajador(); Trabajador trabajador = this.getSelectedTrabajador();
if (trabajador != null) { if (trabajador != null) {
@@ -94,26 +99,6 @@ public class TrabajadorSearchController extends BaseController {
this.reload(); this.reload();
} }
private void view() {
Trabajador trabajador = this.getSelectedTrabajador();
if (trabajador != null) {
TrabajadorViewController controller = (TrabajadorViewController) this.getParentController().getCard(PanelName.TRABAJADOR_VIEW);
controller.setTrabajador(trabajador);
this.getParentController().showCard(PanelName.TRABAJADOR_VIEW);
}
}
private void search() {
String term = this.view.getSearchField().getText();
List<Trabajador> trabajadores = this.trabajadorRespository.search(term);
this.loadTrabajadorTable(trabajadores);
}
private void loadTrabajadorTable() {
List<Trabajador> trabajadores = this.trabajadorRespository.getAll();
this.loadTrabajadorTable(trabajadores);
}
private void loadTrabajadorTable(List<Trabajador> trabajadores) { private void loadTrabajadorTable(List<Trabajador> trabajadores) {
BaseTableModel<Trabajador> model = this.view.getTrabajadorModel(); BaseTableModel<Trabajador> model = this.view.getTrabajadorModel();
model.setRows(trabajadores); model.setRows(trabajadores);
@@ -133,6 +118,21 @@ public class TrabajadorSearchController extends BaseController {
return this.view.getTrabajadorModel().getRow(selectedRow); return this.view.getTrabajadorModel().getRow(selectedRow);
} }
private void reload() {
this.loadTrabajadorTable();
}
private void loadTrabajadorTable() {
List<Trabajador> trabajadores = this.trabajadorRespository.getAll();
this.loadTrabajadorTable(trabajadores);
}
@Override
public void show() {
this.reload();
this.view.getTrabajadorTable().clearSelection();
}
@Override @Override
public BasePanel getView() { public BasePanel getView() {
return this.view; return this.view;

View File

@@ -29,10 +29,6 @@ public class TrabajadorTelefonoSearchController extends AbstractTelefonoSearchCo
return this.view; return this.view;
} }
public void setTrabajador(Trabajador trabajador) {
this.trabajador = trabajador;
}
@Override @Override
protected void create() { protected void create() {
TrabajadorTelefonoCreateController controller = (TrabajadorTelefonoCreateController) this.getParentController() TrabajadorTelefonoCreateController controller = (TrabajadorTelefonoCreateController) this.getParentController()
@@ -106,4 +102,8 @@ public class TrabajadorTelefonoSearchController extends AbstractTelefonoSearchCo
this.loadTelefonosTable(telefonos); this.loadTelefonosTable(telefonos);
} }
public void setTrabajador(Trabajador trabajador) {
this.trabajador = trabajador;
}
} }

View File

@@ -20,6 +20,13 @@ public class DireccionCreatePanel extends BasePanel {
private JTextField calleField; private JTextField calleField;
private JTextField numeroField; private JTextField numeroField;
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
public JButton getGuardarButton() { public JButton getGuardarButton() {
return this.guardarButton; return this.guardarButton;
} }
@@ -41,13 +48,6 @@ public class DireccionCreatePanel extends BasePanel {
return this.numeroField; return this.numeroField;
} }
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
/** /**
* Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code! * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code!
* *

View File

@@ -28,6 +28,13 @@ public class DireccionSearchPanel extends BasePanel {
private JButton volverButton; private JButton volverButton;
private BaseTableModel<Direccion> direccionModel; private BaseTableModel<Direccion> direccionModel;
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
@Override @Override
public JPanel getContentPane() { public JPanel getContentPane() {
return this.contentPane; return this.contentPane;
@@ -69,34 +76,6 @@ public class DireccionSearchPanel extends BasePanel {
return this.direccionModel; return this.direccionModel;
} }
private void createUIComponents() {
this.creatDireccionTable();
}
private void creatDireccionTable() {
// @formatter:off
this.direccionModel = new BaseTableModel<>(
new String[]{"Calle", "Numero"},
(row, rowIndex, colIndex) -> {
switch (colIndex) {
case 0: return row.get(rowIndex).getCalle();
case 1: return row.get(rowIndex).getNumero();
default: return null;
}
}
);
// @formatter:on
this.direccionesTable = new JTable(this.direccionModel);
this.direccionesTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
/** /**
* Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code! * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code!
* *
@@ -157,6 +136,27 @@ public class DireccionSearchPanel extends BasePanel {
GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(150, -1), null, 0, false)); GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(150, -1), null, 0, false));
} }
private void createUIComponents() {
this.creatDireccionTable();
}
private void creatDireccionTable() {
// @formatter:off
this.direccionModel = new BaseTableModel<>(
new String[]{"Calle", "Numero"},
(row, rowIndex, colIndex) -> {
switch (colIndex) {
case 0: return row.get(rowIndex).getCalle();
case 1: return row.get(rowIndex).getNumero();
default: return null;
}
}
);
// @formatter:on
this.direccionesTable = new JTable(this.direccionModel);
this.direccionesTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
/** /**
* @noinspection ALL * @noinspection ALL
*/ */

View File

@@ -20,6 +20,13 @@ public class DireccionUpdatePanel extends BasePanel {
private JTextField calleField; private JTextField calleField;
private JTextField numeroField; private JTextField numeroField;
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
public JButton getActualizarButton() { public JButton getActualizarButton() {
return this.actualizarButton; return this.actualizarButton;
} }
@@ -41,13 +48,6 @@ public class DireccionUpdatePanel extends BasePanel {
return this.numeroField; return this.numeroField;
} }
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
/** /**
* Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code! * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code!
* *

View File

@@ -19,6 +19,13 @@ public class DireccionViewPanel extends BasePanel {
private JTextField direccionField; private JTextField direccionField;
private JTextField numeroField; private JTextField numeroField;
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
@Override @Override
public JPanel getContentPane() { public JPanel getContentPane() {
return this.contentPane; return this.contentPane;
@@ -36,13 +43,6 @@ public class DireccionViewPanel extends BasePanel {
return this.numeroField; return this.numeroField;
} }
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
this.$$$setupUI$$$();
}
/** /**
* Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code! * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR call it in your code!
* *

View File

@@ -1,8 +1,8 @@
<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" <persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.1"
xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd" http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
version="2.1">
<persistence-unit name="jpa"> <persistence-unit name="jpa">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>