Question

Je dois vous connecter à Oracle9,10 et 11 dans mon java application.Le client sera toujours présent lorsque l'application sera exécutée et je veux que l'application fonctionne seulement avec le nom d'utilisateur, mot de passe et l'instance (spécifié dans tnsnames.ora ) .Hence Je voudrais les pilotes oci avec une chaîne de connexion de type: jdbc: oracle: oci: @testora .Im en utilisant le pilote: oracle.jdbc.driver.OracleDriver. J'ai un client 10g et je utilise jdk1.5. Quand j'utilise le pot de ojdbc14 de chemin lib client l'application fonctionne.

Mais si j'utilise le pilote ojdbc5 alors l'application échoue Exception dans le thread "principal" java.lang.UnsatisfiedLinkError: pas ocijdbc11 en java. library.path exception.

Qu'est-ce que je cherche est un moyen d'emballer un pot (ojdbc5 / ojdbc14) et un seul pilote qui utilisera les pilotes oci pour se connecter au client qui est présent sur la machine locale (9/10/11) .C'est la façon dont je préférerais.

Si ce n'est pas possible puis-je rechercher la boîte unix pour la version oracle, ramasser le pot correct et ensuite l'utiliser dans classpath lors de l'invocation de l'application qui est au format jar?

Merci, Fell

Était-ce utile?

La solution

  

java.lang.UnsatisfiedLinkError: pas ocijdbc11 dans java.library.path

Cela signifie que vous manque une DLL (ocijdbc11.dll) dans le chemin de la bibliothèque Java. Assurez-vous que vous avez cette DLL et démarrez votre programme comme celui-ci:

  

java -Djava.library.path=C:\mydirwiththedll com.mypackage.MyProgram

Autres conseils

ojdbc5.jar est destiné à travailler avec jdk1.5.x soit vous connectez à Oracle 10 ou 11g ne devrait pas d'importance, ojdbc14.jar était destiné à jdk1.4.x

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top