segunda-feira, 11 de maio de 2020

Pegando o valor de uma sequence no Postgres

    Quando vamos fazer um insert no banco, o ideal é usarmos a própria sequence para inserir a chave primária, evitando que ela fique desatualizada e gerando erros.

    Para chamarmos a sequence para ela gerar o valor a ser inserido na chave primária podemos usar:

select nextval('nome_da_sequence');

    Quando precisarmos atualizar o valor de alguma sequence, podemos usar o seguinte comando:


select setval('nome_da_sequence', valor_aqui);

sexta-feira, 8 de maio de 2020

Evitando o erro: sun.awt.X11GraphicsEnvironment


Para evitar problemas com aplicações Java rodando em servidores Linux sem modo gráfico disponível, é sempre bom usar o parâmetro:

-Djava.awt.headless=true

Isso vai evitar que em algum momento você se depare com um erro no servidor e gaste um bom tempo até se lembrar desse problema. E qual o problema que esse parâmetro evita?

Bom, você pode diretamente usar alguma classe do pacote sun.aws ou alguma biblioteca que use classes desse pacote (como o IReport, etc), e o problema é que esse pacote trabalha com algumas coisas que precisam ser renderizadas e tenta usar bibliotecas que se comunicam com a interface gráfica do servidor pra isso, e ao serem usadas suas classes ele verifica se o servidor tem modo gráfico disponível ou não, caso não, ele lança uma exceção.

Provavelmente a exceção vai ter algo a ver com sun.awt.X11GraphicsEnvironment

O parâmetro indicado acima a grosso modo diz ao Java pra ignorar o uso das bibliotecas do modo gráfico do servidor.

Então esse é um bom parâmetro pra usar sempre.  



Fonte:
http://www.jguru.com/faq/view.jsp?EID=222296