Java stack trace to String

public static String getStackTrace(Throwable t) {
StringWriter sw = new StringWriter();
t.printStackTrace(new PrintWriter(sw));
return sw.toString();
}
Anúncios

Java – SQLServerException: Connection reset by peer

Hoje encontrei problemas ao conectar no SQL Server, sem motivos aparentes. Testei a conexão no SQL Server Management Studio e funcionou normalmente.

Depurando a aplicação encontrei as seguintes exceções:

  • com.microsoft.sqlserver.jdbc.SQLServerException: Connection reset by peer: socket write error
  • java.security.NoSuchAlgorithmException: Could not create cipher AES/256
  • java.security.InvalidKeyException: Illegal key size
  • O driver não pôde estabelecer uma conexão segura com o SQL Server usando a criptografia SSL

Para corrigir o problema, baixe o Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files. Copie os arquivos local_policy.jar e US_export_policy.jar para a pasta jre\lib\security. No meu caso, são duas:

  • C:\Program Files\Java\jdk1.7.0_17\jre\lib\security
  • C:\Program Files (x86)\Java\jre7\lib\security

Fonte: http://stackoverflow.com/questions/6900542/java-security-invalidkeyexception-illegal-key-size

Breakpoint quando acontecer uma exceção no NetBeans

Descobri como parar em qualquer exceção no NetBeans. Vá no menu Debug, New Breakpoint…, em Breakpoint Type selecione Exception, em Exception Class Name digite “java.lang.Exception”, em Stop On selecione Caught or Uncaught.

Isso faz com que o projeto pare em vários pontos internos do Java, alguns lugares que eu não estava esperando, parece que são exceptions comuns. Então provavelmente você irá querer trocar o Exception Class Name ou filtrar as Exceptions.