トップ «前の日記(2008-09-15 [J]) 最新 次の日記(2008-09-23 [J])» 編集

niche diary

2003|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|04|11|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|
半期 四半期 全カテゴリ
Teeda OLUG Java-Kuche
[HOME] [AGILE] [OBJECT] [PROGRAMMING] [JAVA] [LINUX] [OKINAWA] [BBS] [DIARY]

2008-09-19 [J] [長年日記]

_ DBFlute Hotdeploy

最近メーリングリストに投稿されていた情報を元に、DBFluteをHotDeployにて動作させようとしています。

生成まではできたのですが、dbflute-oracle-exampleのテスト実行で以下の問題が発生します。

1.dbflute.dicon

<component name="dbfluteStringClobType" class="org.seasar.extension.jdbc.types.StringClobType" />

が出力されないため、テスト実行で、dbfluteStringClobTypeが見つからないエラーとなります。

2.BehaviorSelector

loadXXXメソッドなどで、BehaviorSelectorにてBhvクラスの取得が行われるようですが、起点となるdiconが

dbflute.diconとなるため、loadXXX対象のBhvが見つからないエラーとなります。

CacheAbstractSelector#getComponent()内部のS2ContainerをgetRoot()したものに置き換えると正常に

動作するようになります。

3.その他

なぜかmember.getLoginCount()メソッドなどが生成されなくなります。これは調査中…。

http://d.hatena.ne.jp/jflute/20070715/

http://d.hatena.ne.jp/jflute/20070715/1184433162

本日のツッコミ(全5件) [ツッコミを入れる]
_ jflute (2008-09-19 [J] 22:46)

こんにちは <br> <br>> 1.dbflute.dicon <br> <br>HotDeploy用のDiconのテンプレートにdbfluteStringClobType追加しておきます。 <br> <br>> 2. BehaviorSelector <br> <br>その部分のコードを公開して頂けますでしょうか? <br>したら、HotDeployモードのときにだけそのように出力されるように <br>したいと思います。 <br> <br>> 3.その他 <br>> member.getLoginCount() <br> <br>LoginCountプロパティは、ExtendedのEntityに手動で定義している <br>プロパティなので、生成されないのが正常なので気にする必要はないです。 <br>(SpecifyDerivedReferrerのExampleで利用しているためです)

_ t-doi (2008-09-20 [J] 14:10)

jfluteさん <br>コメントありがとうございます。 <br>2.ですが、こちらではCacheAbstractSelector#getComponent()にて_container.getComponent()の前に_container = _container.getRoot()とすることで動作するようになりました。 <br>3.は手動て定義してるんですね。^^;

_ jflute (2008-09-20 [J] 23:14)

ありがとうございます!これを参考に、 <br>http://dbflute.sandbox.seasar.org/download/dbflute/dbflute-0.8.0.zip <br>にて、HotDeployモードか否かに関わらず処理できるようにしてみました。 <br>お試し頂けませんでしょうか? <br> <br>try { <br> return (COMPONENT)_container.getComponent(componentType); <br>} catch (ComponentNotFoundRuntimeException e) { // Normally it doesn't come. <br> final COMPONENT component; <br> try { <br> // for HotDeploy Mode <br> component = (COMPONENT)_container.getRoot().getComponent(componentType); <br> } catch (ComponentNotFoundRuntimeException ignored) { <br> throw e; <br> } <br> _container = _container.getRoot(); // Change container. <br> return component; <br>} <br>

_ t-doi (2008-09-22 [J] 12:51)

jfluteさん <br>遅くなりました。問題なく動作しました!

_ jflute (2008-09-22 [J] 20:10)

t-doiさん、ご確認ありがとうございます! <br>別タスクが落ち着いたら、(今週中には)リリースしますね。 <br>

[]

[HOME] [AGILE] [OBJECT] [PROGRAMMING] [JAVA] [LINUX] [OKINAWA] [BBS] [DIARY]