Java 注册 Oracle JDBC Diagnosability MBean 时出错

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/18914755/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-12 12:17:45  来源:igfitidea点击:

Error while registering Oracle JDBC Diagnosability MBean

javajdbcjarojdbc

提问by Ravi

When I'm using ojdbc6.jarfor my application. I'm getting some weird error. Could anyone help me to solve this error ?

当我ojdbc6.jar用于我的应用程序时。我收到一些奇怪的错误。谁能帮我解决这个错误?

Here is complete stack trace of exception raised during my application execution

这是我的应用程序执行期间引发的异常的完整堆栈跟踪

Sep 20, 2013 4:05:36 PM oracle.jdbc.driver.OracleDriver registerMBeans
SEVERE: Error while registering Oracle JDBC Diagnosability MBean.
javax.management.MalformedObjectNameException: Invalid character '\n' in value part of property
    at javax.management.ObjectName.construct(ObjectName.java:618)
    at javax.management.ObjectName.<init>(ObjectName.java:1382)
    at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:303)
    at oracle.jdbc.driver.OracleDriver.run(OracleDriver.java:213)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:209)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:190)
    at conf.dbcon.dbstate(dbcon.java:42)
    at system.ObjectInfo.getObjectType(ObjectInfo.java:100)
    at system.readFile.readContents(readFile.java:36)
    at system.upload.doPost(upload.java:54)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:724)

采纳答案by Ravi

I redownloaded pathed drivers ojdbc6.jarfrom OTN.

ojdbc6.jar从 OTN 重新下载了路径驱动程序。

To check, whether you have pathed driver or not, follow these steps

要检查您是否有路径驱动程序,请按照下列步骤操作

> java -jar ojdbc6.jar

The unpatched jar prints

未修补的罐子打印

Oracle 11.1.0.6.0-Production JDBC 4.0 complied with JDK6

and the patched jar prints

和打补丁的罐子打印

Oracle 11.1.0.6.0-Production+ JDBC 4.0 complied with JDK6

If you use ojdbc5 it will say 3.0 and 1.5.

如果您使用 ojdbc5,它会显示 3.0 和 1.5。

回答by arbuzov

redownload the jar or change version of your maven/gradle artifact. I had same problem with

重新下载 jar 或更改您的 maven/gradle 工件的版本。我有同样的问题

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc</artifactId>
        <version>11.1.0.6.0</version>
    </dependency>

change to <version>11.2.0.4.0</version>fixed the problem

更改以<version>11.2.0.4.0</version>解决问题