【问题标题】:Jndi spring issueJndi弹簧问题
【发布时间】:2012-05-22 22:09:21
【问题描述】:

我正在寻找使用 Spring 和 JNDI,但在这里找不到问题:

我的 Server.xml:

 <Resource name="jdbc/MimsDS"
      auth="Container"
      type="javax.sql.DataSource"
      driverClassName="oracle.jdbc.driver.OracleDriver"
      username="xxx" password="xxx"
      url="jdbc:oracle:thin:@192.168.1.3:1526:mimsdb10"
      maxActive="20" maxIdle="10" maxWait="-1"
      validationQuery="select sysdate from dual"
    />

我的应用程序上下文:

<bean id="dataSource" class="org.springframework.jndi.JndiTemplate">
    <property name="jndiName" value="java:comp/env/jdbc/MimsDS" />
    <property name="resourceRef" value="true" /> 
  </bean>

<bean id="simpleJdbcTemplate" class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">
    <property name="dataSource" ref="dataSource"/> 
</bean>

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource"/>  
</bean>

我收到了这个错误:

org.springframework.beans.factory.BeanCreationException:创建文件 [/usr/local/apache-tomcat-7.0/webapps/op-calendar/WEB-INF/classes/be/ 中定义的名称为“calendarDaoImpl”的 bean 时出错mims/opcalendar/services/CalendarDaoImpl.class]:init 方法调用失败;嵌套异常是 java.lang.IllegalArgumentException: 'dataSource' or 'jdbcTemplate' is required

【问题讨论】:

    标签: java spring datasource jndi jdbctemplate


    【解决方案1】:

    你应该使用JndiObjectFactoryBean,而不是JndiTemplate

    【讨论】:

      猜你喜欢
      • 2015-11-12
      • 2015-08-05
      • 2012-05-15
      • 2020-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-12
      相关资源
      最近更新 更多