简体   繁体   中英

SEVERE: Error while registering Oracle JDBC Diagnosability MBean

Hi am facing below error using spring project and with oracle ojdbc14-1.4.jar java version 1.8 and tomcat 7.0.37

When i execute the SQL directly in oracle its working fine not sure what I am missing in spring JDBC.

Also I had tried other oracle driver versions from maven

inside spring configuration file

    <bean id="dataSourceDB" class="org.apache.tomcat.jdbc.pool.DataSource" 
         destroy-method="close">
        <property name="driverClassName" value="oracle.jdbc.OracleDriver" />
        <property name="url" value="${database.url_revdbo}" />
        <property name="username" value="${database.username}" />
         <property name="password" value="${database.password}" /> 
        <property name="initialSize" value="${database.initialSize}" />
    <property name="maxActive" value="${database.maxActive}" />
    <property name="minIdle" value="${database.minIdle}" />
    <property name="maxIdle" value="${database.maxIdle}" />
    <property name="maxWait" value="${database.maxWait}" />
    <property name="testWhileIdle" value="${database.testWhileIdle}" />
    <property name="timeBetweenEvictionRunsMillis" value="${database.timeBetweenEvictionRunsMillis}" />
    <property name="validationQuery" value="${database.validationQuery}" />
</bean>


<bean id="namedParameterJdbcTemplateDB"" class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">
    <constructor-arg ref="dataSourceDB" />
</bean>

inside java DAO layer

        private String INSERT_REVENUE_DATA= "INSERT INTO table_test (BATCH_ID,status) values ( '1234','new')";


    @Autowired
    @Qualifier("namedParameterJdbcTemplateDB")
    private NamedParameterJdbcTemplate namedParameterJdbcTemplateDB;

        Map<String, Object> paramMap = new HashMap<>();
        //paramMap.put("field1", "1111");
        //paramMap.put("field2", "new");

        namedParameterJdbcTemplateRevport.update(INSERT_DATA, paramMap);


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$1.run(OracleDriver.java:213)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.jdbc.driver.OracleDriver.<clinit>(OracleDriver.java:209)

You get this error :

javax.management.MalformedObjectNameException: 
Invalid character '\n' in value part of property

because you have two quotes in the property :

<bean id="namedParameterJdbcTemplateDB""
//------------------------------------^^

You have to use just one

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM