mappingDirectoryLocationsってイマイチだね

"Spring in Action" P161には、SpringFrameworkでHibernateする際の便利機能として、
使用するhbmの記述を省略する方法が書いていました。





classpath:/to/openheart/petshop/model


...

おおこれは!と使い出してみましたが、どうもTestCaseからHibernateにアクセスしようとすると
失敗する。
で、Eclipseデバッグかけてみると、どうやらclasspath:の部分はテスト実行時の一番最初の
クラスパスが使われる模様。えええええええ。
つまり、以下のようなフォルダ構成でテストケースを実行すると、


petshop
├─test
│ ├─classes(テストケースのクラス出力先)
│ └─src(テストケースのソース)
└─WEB-INF
├─classes(製品クラス出力先)
└─src(製品のソース)
└─to
└─openheart
└─petshop
└─model(hbm,マッピングクラス)
classpath:には一番最初ののクラスパスであるtest/classesが入り、
test/classes/to/openheart/petshop/model以下のフォルダで*.hbm.xmlを探すことになる。
で、当然何も見つからず、読みにいくとエラーになる、と。
それが嫌なら、テストケースの出力先もWEB-INF/classesにしてしまえばいいんだろうけど、本能的に間違ってる気がする。
あるいは、
classpath:/to/openheart/petshop/modelを、
c:/eclipse3.1/workspace/petshop/WEB-INF/src/to/openheart/petshop/modelにしてしまえば・・・
ってさらに間違ってる。
というわけで、いまいち使えないmappingDirectoryLocationsでした。
大人しくhibernate.cfg.xml書いて、


hibernate.cfg.xml

ってするのが一番ですね。
これならHibernate単体でも動かせるし。

お母さん、僕のモンブラン、どこにいったでせうね。

この業界(IT)に身をおいていると、かたぎの人に比べてさらに肉筆の手紙を送る機会は減りますね。
年賀状なんか裏も表もプリンタで印刷してポストに投函する儀式と化していますし。
大学生のとき、なけなしのお金をはたいて買ったモンブランも、実家のどこかで埃をかぶってるんだろうなぁ。
http://blog.business-i.jp/kimura/2005/07/post_060d.html
サンケイビジネスアイ紙上で現代日本に鋭い警鐘を鳴らし続ける木村剛氏。
私の心の師匠です。