2015-05-19 2 views
6

Ho usato ojdbc14.jar in precedenza e ora voglio aggiornarlo su ojdbc7.jar per supportare oracle12c.L'aggiornamento del driver a ojdbc7.jar dà errore per oracle/security/pki/OraclePKIProvider

Ma durante la connessione server dà errore per "oracle/security/pki/OraclePKIProvider".

Se aggiungo oraclepki.jar al server classpath si avvia correttamente senza errori.

Sto cercando di capire quale speciale è stato aggiunto in ojdbc7.jar che mi chiede di aggiungere oraclepki.jar, come con ojdbc14.jar non mi ha mai chiesto di aggiungere oraclepki nel mio classpath.

Qualcuno sa cosa cambia con ojdbc7 che causa questo errore e cosa si può fare per evitare di aggiungere oraclepki su classpath?

+0

Si tratta di un'eccezione ClassNotFoundException? –

+0

Grazie a Clark, dice solo errori: oracle/security/pki/OraclePKIProvider, ma credo che la sua classe ClassNotFoundException aggiungendo Jar al classpath risolva il problema. –

+0

Verificare che ojdbc14.jar non si trovi da nessuna parte nel classpath –

risposta

3

Controlla classpath e assicurarsi di rimuovere quanto segue: (se esiste)

-XX:-UseSplitVerifier

+1

Ha funzionato per me, ma voglio sapere qual è la connessione b/w usesplitverifier e quell'eccezione? –

0

Questo è un issue registrata nel database Oracle Support. Se hai il supporto Oracle, puoi scoprirne di più. In caso contrario ...

Come afferma Joseph Carroll, rimuovere la riga -XX:-UseSplitVerifier dalla propria riga di comando potrebbe risolvere il problema. L'argomento UseSplitVerifier in pratica dice a Java di utilizzare un verificatore di codice byte precedente, meno rigoroso (che a volte veniva usato per far funzionare gli strumenti di strumentazione del codice byte più vecchi durante l'aggiornamento da Java 6 a Java 7). Purtroppo, ha causato alcuni problemi durante l'aggiornamento alcuni strumenti da Java 7 a Java 8. Altre cose che si potrebbe COMPRENDONO (per Oracle):

  1. l'aggiornamento a una Java 7 strumento strumentazione bytecode compatibili.
  2. Oppure, come una soluzione alternativa, includere oraclepki_121020.jar nel classpath. Questo è una soluzione valida nel caso in cui l'aggiornamento a uno strumento di strumentazione compatibile con il codice java 7 non sia possibile.

Questo article parla perché -XX:-UseSplitVerifier è stato aggiunto per l'utilizzo di Java 7 con Oracle. Questo article parla dell'utilizzo del flag –noverify con Java 8 anziché -XX:-UseSplitVerifier.

Problemi correlati