Problema de Segurança com JDBC --> SQLServer sem a utilização do IDE Eclipse

2 respostas
R

Boa Tarde!

Estou recebendo um erro quando utilizo uma conexão com SQL Server utilizando JDBC puro.
É muito estranho, pois quando eu conecto utilizando o IDE Eclipse, funciona bem, mas quando eu crio um arquivo jar para ser executado fora do Eclipse, ocorre o erro abaixo.

Erro:

Exception in thread main java.lang.SecurityException: invalid SHA1 signature file digest for com/microsoft/sqlserver/jdbc/CharacterStreamSetterArgs.class

at sun.security.util.SignatureFileVerifier.verifySection(Unknown Source)

at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)

at sun.security.util.SignatureFileVerifier.process(Unknown Source)

at java.util.jar.JarVerifier.processEntry(Unknown Source)

at java.util.jar.JarVerifier.update(Unknown Source)

at java.util.jar.JarFile.initializeVerifier(Unknown Source)

at java.util.jar.JarFile.getInputStream(Unknown Source)

at sun.misc.URLClassPath$JarLoader$1.getInputStream(Unknown Source)

at sun.misc.Resource.cachedInputStream(Unknown Source)

at sun.misc.Resource.getByteBuffer(Unknown Source)

at java.net.URLClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.access$100(Unknown Source)

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

Não sei o que pode estar acontecendo.

Código da Classe:

Class.forName('com.microsoft.sqlserver.jdbc.SQLServerDriver'); strConn = "jdbc:sqlserver://" + this.host + ":" + this.port + ";databaseName=" + this.sid; conn = DriverManager.getConnection(strConn, user, password);

Código que executo na linha de comando.

Quando removo as libs do Sql Server do comando abaixo, funciona normalmente quando acesso o DB2, DB2 no AS400 e Oracle

java -jar -ms32m -mx256m -classpath lib/db2/db2jcc.jar;lib/db2/db2jcc_license_cu.jar;lib/db2/jt400.jar;

lib/mail/activation.jar;lib/mail/commons-email-1.0.jar;

lib/mail/mailapi.jar;lib/mail/smtp.jar;lib/oracle10g/ojdbc14.jar;

lib/oracle10g/orai18n.jar;lib/sqlserver2000/msbase.jar;

lib/sqlserver2000/mssqlserver.jar;lib/sqlserver2000/msutil.jar;

lib/sqlserver2005/sqljdbc.jar;lib/util/log4j-1.2.8.jar;

lib/util/synchro-commons.jar; Infor.jar br.com.synchro.CargaInfor resources\config.txt

Será que alguém consegue me ajudar?

Muito Obrigado
Roberto Caetano

2 Respostas

_fs

Hm, nunca vi este erro, e estranhamente o Google não retorna resultados.

Já tentou usar o JTDS? É bem mais estável que o driver da Microsoft.
http://jtds.sourceforge.net/

R

Obrigado!
Com o JTDS o problema não acontece mais.

PS: Desculpe a demora pelo retorno

Abraço
Roberto

LIPE:
Hm, nunca vi este erro, e estranhamente o Google não retorna resultados.

Já tentou usar o JTDS? É bem mais estável que o driver da Microsoft.
http://jtds.sourceforge.net/

Criado 8 de outubro de 2007
Ultima resposta 2 de dez. de 2007
Respostas 2
Participantes 2