ダウンロード
Magazine
開発
アカウント
ダウンロード
Magazine
開発
ログイン
アカウント/パスワードを忘れた
アカウント作成
言語
ヘルプ
言語
ヘルプ
×
ログイン
ログイン名
パスワード
×
アカウント/パスワードを忘れた
日本語の翻訳状況
カテゴリ:
ソフトウェア
人物
PersonalForge
Magazine
Wiki
検索
OSDN
>
ソフトウェアを探す
>
システム
>
TERASOLUNA Framework
>
フォーラム
>
公開討議
>
テストクラス作成し実行した時の挙動の不具合
TERASOLUNA Framework
概要
プロジェクト概要
開発ダッシュボード
Webページ
開発メンバー
画像ギャラリー
公開フィード一覧
活動
統計情報
活動履歴
ダウンロード
リリース一覧
統計
ソースコード
コードリポジトリリスト
Subversion
リポジトリ閲覧
チケット
チケット一覧
マイルストーン一覧
チケットの種類一覧
コンポーネント一覧
よく使われるチケット一覧のリスト/RSS
新規チケット登録
文書
Wiki
FrontPageの表示
ページ一覧
最近の更新
文書マネージャ
文書一覧
コミュニケーション
フォーラム
フォーラム一覧
公開討議 (1277)
メーリングリスト
MLの一覧
terasoluna-information
ニュース
フォーラム:
公開討議
(スレッド #23630)
話題(スレッド)一覧に戻る
RSS
テストクラス作成し実行した時の挙動の不具合 (2009-08-13 22:23 by
さくら
#45414)
返信
チケットに引用
こんにちは、お世話になります。
今、テストクラスを作成しており、標題の通りのエラーが下記クラスを実行すると起こります。
フレームワーク側で悪さを起こしてるように思えるのですが、、、。
エラーについて調べてもよくわからず困ってます。
Couldn't find a destroy method named 'close' on bean with name 'dataSource'
誰かご教授お願いできないでしょうか。
下記に、クラスと、コンソールを貼り付けます。
【RealizationTest.java】※テストクラス
----------------------------------------------------------------------------------------------------
package logic;
import jp.terasoluna.fw.dao.QueryDAO;
public class RealizationTest extends DaoTestCase {
public void testGetChildJobContext01() {
System.out.println("####testGetChildJobContext01 -Start######");
System.out.println("####testGetChildJobContext01 -End######");
}
@Override
protected String[] doGetConfigLocations() {
System.out.println("####doGetConfigLocations -Start######");
return new String[] {"/dao-test.xml"};
}
/**
* 初期化メソッド。
* (初期データの投入など必要に応じて実装)
*/
@Override
protected void setUpData() throws Exception {
System.out.println("####setUpData -Start######");
System.out.println("####setUpData -End######");
}
/**
* 終了時メソッド。
* (テスト終了時に行う処理を実装)
*/
@Override
protected void cleanUpData() throws Exception {
System.out.println("####cleanUpData -Start######");
System.out.println("####cleanUpData -End######");
}
}
----------------------------------------------------------------------------------------------------
【実行コンソール】
----------------------------------------------------------------------------------------------------
####doGetConfigLocations -Start######
2009-08-13 22:13:22,143 INFO [logic.RealizationTest] - Loading context for locations: jp/terasoluna/utlib/spring/DaoTestCase.xml,/dao-test.xml
2009-08-13 22:13:22,878 INFO [logic.RealizationTest] - Began transaction (1): transaction manager [org.springframework.jdbc.datasource.DataSourceTransactionManager@113beb5]; default rollback = true
####setUpData -Start######
####setUpData -End######
####testGetChildJobContext01 -Start######
####testGetChildJobContext01 -End######
####cleanUpData -Start######
####cleanUpData -End######
2009-08-13 22:13:22,878 INFO [logic.RealizationTest] - Rolled back transaction after test execution
2009-08-13 22:13:22,878 ERROR [org.springframework.beans.factory.support.DisposableBeanAdapter] - Couldn't find a destroy method named 'close' on bean with name 'dataSource'
----------------------------------------------------------------------------------------------------
一番最後に出力されている↓
2009-08-13 22:13:22,878 ERROR [org.springframework.beans.factory.support.DisposableBeanAdapter] - Couldn't find a destroy method named 'close' on bean with name 'dataSource'
ここの部分です。
設定ファイルの『dataAccessContext-batch.xml』に記述されている、dataSourceのdestroy-method="close"がないせい?
よくわかりません。。
よろしくお願い致します。
m(_ _)m
メッセージ #45414 への返信
×
題名
本文
メッセージ #45414 への返信 > こんにちは、お世話になります。 > > 今、テストクラスを作成しており、標題の通りのエラーが下記クラスを実行すると起こります。 > フレームワーク側で悪さを起こしてるように思えるのですが、、、。 > エラーについて調べてもよくわからず困ってます。 > > Couldn't find a destroy method named 'close' on bean with name 'dataSource' > > 誰かご教授お願いできないでしょうか。 > 下記に、クラスと、コンソールを貼り付けます。 > > 【RealizationTest.java】※テストクラス > ---------------------------------------------------------------------------------------------------- > package logic; > > import jp.terasoluna.fw.dao.QueryDAO; > > public class RealizationTest extends DaoTestCase { > > public void testGetChildJobContext01() { > System.out.println("####testGetChildJobContext01 -Start######"); > System.out.println("####testGetChildJobContext01 -End######"); > } > > @Override > protected String[] doGetConfigLocations() { > System.out.println("####doGetConfigLocations -Start######"); > return new String[] {"/dao-test.xml"}; > } > > /** > * 初期化メソッド。 > * (初期データの投入など必要に応じて実装) > */ > @Override > protected void setUpData() throws Exception { > System.out.println("####setUpData -Start######"); > System.out.println("####setUpData -End######"); > > } > > /** > * 終了時メソッド。 > * (テスト終了時に行う処理を実装) > */ > @Override > protected void cleanUpData() throws Exception { > System.out.println("####cleanUpData -Start######"); > System.out.println("####cleanUpData -End######"); > } > } > > > > ---------------------------------------------------------------------------------------------------- > > 【実行コンソール】 > ---------------------------------------------------------------------------------------------------- > ####doGetConfigLocations -Start###### > 2009-08-13 22:13:22,143 INFO [logic.RealizationTest] - Loading context for locations: jp/terasoluna/utlib/spring/DaoTestCase.xml,/dao-test.xml > 2009-08-13 22:13:22,878 INFO [logic.RealizationTest] - Began transaction (1): transaction manager [org.springframework.jdbc.datasource.DataSourceTransactionManager@113beb5]; default rollback = true > ####setUpData -Start###### > ####setUpData -End###### > ####testGetChildJobContext01 -Start###### > ####testGetChildJobContext01 -End###### > ####cleanUpData -Start###### > ####cleanUpData -End###### > 2009-08-13 22:13:22,878 INFO [logic.RealizationTest] - Rolled back transaction after test execution > 2009-08-13 22:13:22,878 ERROR [org.springframework.beans.factory.support.DisposableBeanAdapter] - Couldn't find a destroy method named 'close' on bean with name 'dataSource' > > ---------------------------------------------------------------------------------------------------- > 一番最後に出力されている↓ > > 2009-08-13 22:13:22,878 ERROR [org.springframework.beans.factory.support.DisposableBeanAdapter] - Couldn't find a destroy method named 'close' on bean with name 'dataSource' > > ここの部分です。 > 設定ファイルの『dataAccessContext-batch.xml』に記述されている、dataSourceのdestroy-method="close"がないせい? > > よくわかりません。。 > > よろしくお願い致します。 > > m(_ _)m >
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル
RE: テストクラス作成し実行した時の挙動の不具合 (2009-08-18 23:51 by
yggd
#45448)
返信
チケットに引用
Bean定義ファイルの、id="dataSource" で指定されたデータソース実装クラスから、
リソース解放時に呼び出される close()メソッドが見つからなかった旨の
エラーメッセージが表示されています。
例として、Commons-DBCP によるデータソースクラス:"org.apache.commons.dbcp.BasicDataSource" にはclose() メソッドが
用意されていますが、
"org.springframework.jdbc.datasource.DriverManagerDataSource" など、
こちらに close() メソッドを持たない、別のデータソース実装クラスが
指定されている可能性があります。
以下、ブランクプロジェクトにおけるデフォルトのデータソース指定
dataAccessContext-batch.xml の抜粋を転載いたしますので、
class 属性の完全修飾名をご確認いただければと存じます。
[ ブランクプロジェクト内の dataAccessContext-batch.xml 抜粋 ]
---
<!-- Basicデータソース -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="poolPreparedStatements" value="true" />
<property name="defaultAutoCommit" value="false" />
<!-- property name="maxActive" ref="threadSize"/ -->
</bean>
---
#45414
への返信
メッセージ #45448 への返信
×
題名
本文
メッセージ #45448 への返信 > Bean定義ファイルの、id="dataSource" で指定されたデータソース実装クラスから、 > リソース解放時に呼び出される close()メソッドが見つからなかった旨の > エラーメッセージが表示されています。 > > 例として、Commons-DBCP によるデータソースクラス:"org.apache.commons.dbcp.BasicDataSource" にはclose() メソッドが > 用意されていますが、 > "org.springframework.jdbc.datasource.DriverManagerDataSource" など、 > こちらに close() メソッドを持たない、別のデータソース実装クラスが > 指定されている可能性があります。 > > 以下、ブランクプロジェクトにおけるデフォルトのデータソース指定 > dataAccessContext-batch.xml の抜粋を転載いたしますので、 > class 属性の完全修飾名をご確認いただければと存じます。 > > [ ブランクプロジェクト内の dataAccessContext-batch.xml 抜粋 ] > --- > <!-- Basicデータソース --> > <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> > <property name="driverClassName" value="${jdbc.driverClassName}" /> > <property name="url" value="${jdbc.url}" /> > <property name="username" value="${jdbc.username}" /> > <property name="password" value="${jdbc.password}" /> > <property name="poolPreparedStatements" value="true" /> > <property name="defaultAutoCommit" value="false" /> > <!-- property name="maxActive" ref="threadSize"/ --> > </bean> > ---
Wiki文法は使えません
ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。
ログインする
ニックネーム
プレビュー
投稿
キャンセル