Boa tarde!
Estou tentando alterar o timeout da conexão do MYSQL utilizando EntityManager mas não esta surtindo efeito.
Já tentei colocar este parâmetro no arquivo persistence.xml, na classe que faz a conexão com o banco, conforme código abaixo e também direto na query.
Alguém sabe me dizer como efetuar esta alteração?
`private static EntityManagerFactory factoryRetaguarda;
private EntityManager emRetaguarda;
static {
try {
Map cfg = new HashMap<>();
Properties arquivoConexao = new Properties();
arquivoConexao.load(new FileInputStream(new File(Constantes.ARQUIVO_CONEXAO_BD)));
cfg.put("javax.persistence.jdbc.driver", arquivoConexao.getProperty("sgbd.retaguarda.driver"));
cfg.put("javax.persistence.jdbc.url", arquivoConexao.getProperty("sgbd.retaguarda.url"));
cfg.put("javax.persistence.jdbc.user", arquivoConexao.getProperty("sgbd.retaguarda.user"));
cfg.put("javax.persistence.jdbc.password", arquivoConexao.getProperty("sgbd.retaguarda.password"));
cfg.put("javax.persistence.lock.timeout", "500");
cfg.put("javax.persistence.query.timeout", "500");
factoryRetaguarda = Persistence.createEntityManagerFactory("d2erp", cfg);
} catch (IOException ex) {
JOptionPane.showMessageDialog(null, "Não foi possível abrir o arquivo de configuração do banco de dados.", "Erro do sistema", JOptionPane.ERROR_MESSAGE);
} catch (RuntimeException ex) {
ex.printStackTrace();
JOptionPane.showMessageDialog(null, "Erro ao configurar o banco de dados.\n" + ex.getMessage(), "Erro do sistema", JOptionPane.ERROR_MESSAGE);
}
}
public EntityManager conectar() throws Exception {
emRetaguarda = factoryRetaguarda.createEntityManager();
return emRetaguarda;
}
public void desconectar() {
if (emRetaguarda != null && emRetaguarda.isOpen()) {
emRetaguarda.close();
}
}`