AVVISO: Errore durante la registrazione di Oracle JDBC Diagnosticabilità MBean

Stiamo ottenendo il seguente errore quando si utilizza Oracle 11g ojdbc6.jar:

WARNING: Error while registering Oracle JDBC Diagnosability MBean.
java.lang.NoSuchMethodError:
javax.management.StandardMBean.<init>(Ljava/lang/Class;Z)V
        at oracle.jdbc.driver.OracleDiagnosabilityMBean.<init>(OracleDiagnosabilityMBean.java:34)
        at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:342)
        at oracle.jdbc.driver.OracleDriver$1.run(OracleDriver.java:199)

Dopo avere esaminato da molti forum e blog, non abbiamo trovato alcun finale soluzioni di sicurezza. Così, vogliamo condividere la soluzione qui.

 

3 Replies
  1. 4

    Secondo Oracle documento, JDBC e la diagnosticabilità di gestione caratteristica presenta un MBean, oracle.jdbc.driver.OracleDiagnosabilityMBean. Questo MBean fornisce i mezzi per attivare e disattivare JDBC di registrazione, che si può trovare qui:
    https://docs.oracle.com/cd/B28359_01/java.111/b31224/diagnose.htm.

    E, il driver utilizza java.util.la registrazione per la registrazione di scopo, in realtà nel nostro caso, non abbiamo davvero bisogno di utilizzare tali informazioni, in modo da decidere di disabilitare i log e non c’è NESSUN avviso accadrà più.

    Come disattivare il registro per il driver di oracle.jdbc):

    • Come predefinito, JRE utilizzare il valore predefinito di file di proprietà in HOME_JRE\lib\logging.proprietà, in modo da modificare il file e aggiungere questa info:
      • oracle.jdbc.livello=OFF
    • O configurazione delle proprietà del file di log per java.util.la registrazione
      • java -Djava.util.registrazione.config.file=/YourConfig.proprietà
      • Aggiungere oracle.jdbc.livello=OFF per YourConfig.proprietà

    Funziona per noi, non si ottiene alcun WANRING di errore di cui sopra.

    • Questo potrebbe non risolvere il problema per tutti, non per me. Link a Oracle scaricare non è valido.
  2. 0

    Ho avuto la stessa problema. Non so se il mio ambiente è lo stesso.

    Nel mio ambiente, sto utilizzando sia jdbc, jboss vasi nella stessa applicazione.
    Credo, ma non si verifica, che qualcosa nel jboss vasi è di aggancio
    nella classe loader e causando il problema.

    Ho preso in giro il problema da solo il caricamento del ojdbc driver vaso, creando le mie
    istanza di database, e quindi il caricamento di jboss vasetti.

  3. 0

    Sto utilizzando Maven e il mio progetto è stato utilizzando log4j 1.2.15. Per qualsiasi motivo, 1.2.15 ha dipendenze jms 1.1, jmxtools 1.2.1, e jmxri 1.2.1.

    jmxri 1.2.1 contiene una versione di StandardMBean con un costruttore che prende un StandardMBean (non java.lang.Class). Mentre non ho fatto test approfonditi per confermare questa ipotesi, io credo che questa è la versione della classe che è stato utilizzato, e la causa ultima dell’errore.

    Sembra come se log4j 1.2.14 non dispone di queste dipendenze. Così ho eseguito il basso per 1.2.14, e li tirò fuori.

    • Per me, l’errore si verifica utilizzando log4j 1.2.14

Lascia un commento