Jdbc - as/400

3 respostas
R

Olá pessoal!



Quero conectar, de uma estação PC, um banco de dados "Books" no servidor AS/400:

- Como devo configurar o <String url>?

- Como posso definir a classe <Class.forName()>?



Também baixei o driver jt400.jar no site da IBM

(http://www-1.ibm.com/servers/eserver/iseries/toolbox/):

- Em que diretório devo colocá-lo?

- Devo referenciá-lo no código do programa?



Obrigado!

3 Respostas

J

Que banco de dados vc está usando? Vc sabe qual o IP do servidor? Diz aê que a galera pode ajudar melhor!



valeuz…

R
O banco de dados nativo do servidor é o DB2/400, codifiquei a conexão da seguinte forma:





    String url = "jdbc:as400://10.32.18.50:BOOKS";


    String username = "anonymous";


    String password = "guest";


    try {


    Class.forName( "com.ibm.as400.access.AS400JDBCDriver" );


    connection = DriverManager.getConnection(url, username, password );


    }





Porém estou recebendo a seguinte mensagem de erro:





  Failed to load JDBC driver.


  java.lang.ClassNotFoundException: com.ibm.as400.access.AS400JDBCDriver


  at java.net.URLClassLoader$1.run(URLClassLoader.java:198)


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


  at java.net.URLClassLoader.findClass(URLClassLoader.java:186)


  at java.lang.ClassLoader.loadClass(ClassLoader.java:306)


  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)


  at java.lang.ClassLoader.loadClass(ClassLoader.java:262)


  at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:322)


  at java.lang.Class.forName0(Native Method)


  at java.lang.Class.forName(Class.java:130)


  at TesteBooks.<init>(TesteBooks.java:32)


  at TesteBooks.main(TesteBooks.java:151)





Estou usando o Eclipse 2.1 e configurei o autoexec.bat da seguinte forma:





  SET JAVA_HOME=C:j2sdk1.4.0_03


  SET PATH=%PATH%;%JAVA_HOME%bin


  SET CLASSPATH=.;%JAVA_HOME%;C:jt400libjt400.jar;





O que pode ser?





ramires
J
Bem, não vejo nada de errado no seu codigo. Entretanto, sugiro que vc coloque o driver no diretorio JAVA_HOME/jre/lib/ext. Desse modo, vc não precisará coloca-lo no seu path. Sugiro tambem que vc veja um codigo exemplo de como usar o driver em <a>http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/rzahh/javadoc/JDBCQueryExample.html</a>.





Nesse site ele carrega o driver de maneira diferente que é:


// Load the IBM Toolbox for Java JDBC driver.


DriverManager.registerDriver(new com.ibm.as400.access.AS400JDBCDriver());





O que ele está fazendo é registrando o driver. Acontece que quando vc usa:


Class.forName( "com.ibm.as400.access.AS400JDBCDriver" );





o driver é automaticamente carregado e registrado.





De qualquer forma veja o exemplo. Pode ser util. Ah, veja tambem a documentação do driver em <a>http://publib.boulder.ibm.com/iseries/v5r2/ic2924/info/rzahh/javadoc/com/ibm/as400/access/AS400JDBCDriver.html</a>





valeuz…
Criado 14 de fevereiro de 2003
Ultima resposta 14 de fev. de 2003
Respostas 3
Participantes 2