2012-02-07 94 views
2

我有一個在WebLogic中正常運行的Spring應用程序。Spring IntTest從Atomikos獲得「無法增長連接池」

我有一套使用Atomikos「Transaction Essentials」框架提供獨立事務管理器的集成測試。我有這個工作,但我現在看到一個新問題,但我不知道我可能會做出什麼改變,會導致這種情況發生。

我看到一個堆棧跟蹤開頭是這樣的:

org.springframework.jdbc.CannotGetJdbcConnectionException:無法獲取JDBC連接;嵌套的例外是com.atomikos.jdbc.AtomikosSQLException:無法在org.springframework.jdbc.datasource.DataSourceUtils.getConnection增長連接池 (DataSourceUtils.java:80)

下面是相關的bean定義:

<bean id="atomikosTransactionManager" class="com.atomikos.icatch.jta.UserTransactionManager" 
     init-method="init" destroy-method="close"> 
    <!-- when close is called, should we force transactions to terminate or not? --> 
    <property name="forceShutdown"> 
     <value>true</value> 
    </property> 
</bean> 

<!-- Also use Atomikos UserTransactionImp, needed to configure Spring --> 
<bean id="atomikosUserTransaction" class="com.atomikos.icatch.jta.UserTransactionImp"> 
    <property name="transactionTimeout"> 
     <value>300</value> 
    </property> 
</bean> 

<!-- Configure the Spring framework to use JTA transactions from Atomikos --> 
<bean id="catalogTransactionManager" class="org.springframework.transaction.jta.JtaTransactionManager"> 
    <property name="transactionManager"> 
     <ref bean="atomikosTransactionManager" /> 
    </property> 
    <property name="userTransaction"> 
     <ref bean="atomikosUserTransaction" /> 
    </property> 
</bean> 

我也有好幾個這樣的:

<bean id="appConfigDataSource" 
    class="com.atomikos.jdbc.AtomikosDataSourceBean" 
    p:uniqueResourceName="appConfigDataSource" 
    p:xaDataSourceClassName="oracle.jdbc.xa.client.OracleXADataSource" 
    p:poolSize="5"> 
    <property name="xaProperties"> 
     <props> 
      <prop key="user">${ds.appconfig.userName}</prop> 
      <prop key="password">${ds.appconfig.password}</prop> 
      <prop key="URL">${ds.appconfig.url}</prop> 
     </props> 
    </property> 
</bean> 

我試圖改變 「5」 到 「50」。這使得它運行時間更長,但它仍然會因相同的錯誤而失敗。沒有辦法,甚至需要5個甚至50個連接。我有一種強烈的感覺,如果我將它改爲更大的數字,它會運行更長的時間,並且仍會以相同的錯誤失敗。

我可能會丟失什麼?

回答

4

沒關係。這是一個簡單的問題。我忘記了我的測試數據庫的主機名在前一段時間改變了,我忘記了更改屬性值。

相關問題