/** 実験 */ public class Hoge { private Foo foo; private Bar bar; /** コンストラクタ1つ目 */ public Hoge(Foo foo, Bar bar) { this.foo = foo; this.bar = bar; } /** コンストラクタ2つ目 */ public Hoge(int number, String string) { new HogeExt(number, string); } public Hoge() { // コンパイラを通すのにとりあえず定義 } } class HogeExt extends Hoge { private int number; private String string; public HogeExt(int number, String string) { this.number = number; this.string = string; } } class Foo { // とりあえず未定義 } class Bar extends Foo { // とりあえず未定義 }コンストラクタのパラメータが2つの値を用意します。 index,valueな組み合わせを利用すると 単純なint,Stringの組み合わせが呼びだされる。 まぁ、当然と言えば当然なんだけど2つ目のコンストラクタが定義されていないときはExceptionが発生する。 どうしてもtypeではなくindexを使いたい場合はref属性で指定してやれば動いてくれることはわかった。 でも、コンストラクタインジェクションなんて使うかどうか。。。 僕的にはAspectJチック(と言っても範囲は広いけど)なことができれば十分だし。。。
水曜日, 10月 22, 2008
コンストラクタインジェクション-tyep指定とindex指定
はたして使うのかどうか。。。
とにかく一度動かしてみようってなことで、
あれこれ、リファレンスを見ながらやってみた。
いろいろと種類があるもんだ。
その中でもindex指定ってのがあった。
要はコンストラクタのパラメータの順番に設定を定義していくというものである。
で、気になったのがコンストラクタの定義が
月曜日, 10月 20, 2008
[Spring2.5]factory-beanって何かね??
なんとなくではあるが、Springの使い方を改めて一から勉強してみる。
まぁ、正直今まででも真面目に見たことはなかったんですが。。。
いいかげんにこういったものの使い方を覚えておかないと
この先生きていけるか不安で不安で。。。
ともかく、Spring 2.5.5のSpring ReferenceというPDFを読んでみた。
まだ、chapter3の途中までなんですが、
importとかの存在も知らなかった自分が恥ずかしいです。。。
何かあるんだろうなぁ~とは思いつつ過ごしてきただけにこうやって改めて見てみると
「やっぱり、きちんと書いてるんだなぁ~」と実感です。
あとは、よくドキュメントとかでBeanFactoryってのを呼んでたけど
リファレンスではApplicationContextってのを呼んでる(もちろんBenaFactoryも載ってますけど)
階層構造を覗いてみて僕はまだまだ勉強不足ってことがよくわかった。
ApplicationContextの方がBeanFactoryより親なんだね。。。
僕はずっとBeanFactoryが親だと思ってたよ。。。
ともかく、こうやって一つ一つ見直していくといろいろあるもんだということが分かった。
その中でも一番よくわかんなかったのはfactory-beanっていう属性だ。
<!-- the factory bean, which contains a method called createInstance() --> <bean id="serviceLocator" class="com.foo.DefaultServiceLocator"> <!-- inject any dependencies required by this locator bean --> </bean> <!-- the bean to be created via the factory bean --> <bean id="exampleBean" bean="serviceLocator" method="createInstance"> </bean>この中のfactory-beanの意義がようわからん。。。 やってることは理解してるつもりではいます。 com.foo.DefaultServiceLocator#createInstance()でタイプ未定義のexampleBeanを返すよん。 ってなところでしょう。 実際動かしてみたし、間違いはないはず。 結局、あえて別定義でBeanを用意するようなパターンってあるのかな?? もっと複雑になれば変わってくるのかもしれないけど。。。 そもそもファクトリーメソッドをいちいちSpringというコンテナ経由で取得する必要があんのかな?? だって、結局のところBeanとFactory間の関連が強くなっちゃうんじゃないの?? それならそのままコーディングした方が楽なような。。。 うーん、たぶん無知な僕は利点が見つかるまでは使わないと思う。。。
火曜日, 10月 14, 2008
秋祭り
水曜日, 10月 08, 2008
JNLPException[category: システム設定 : Exception: null
WidgetFXで自分用アプリを作ろうと思っていたんですが、
困ったことにJavaWebStartで
「JRE1.6+が必要です」
というメッセージが出続けます。。。
JavaコントロールパネルのJavaランタイム設定のシステム部分が未登録なのかが分かんなかったんです。
昨日も同じように悩んでいて、
Javaコントロールパネルとか読んでたんですが、
deployment.propertiesなんていうのに必要そうな気分だ。。。
でも、deployment.propertiesってどこにあんの??
ってなところまで調べてタイムアップだったんですが、
今日、改めて調べてみました。
真面目にExceptionを調べればよかった。。。
でも、システム設定ってワードでググっても何もでてこない。。。
ものは試しにJNLPException[category: Systemで検索してみると
Sunのフォーラムにこんなのが載ってた。
Java Web Start & JNLP - WebStart 1.6 issues with intranet JRE installers
これの一番最後の部分を見ていたら、
各ユーザーでdeployment.propertiesを所持していることが判明!!
さらに細かく読むと一回削除してjavawsを起動させると
新しく作成されるそうだ。
ためしにやってみたらうまいこと行きました♪
最初はFW設定とかのからみか?と思って四苦八苦していたなんて恥ずかしくて言えないw
登録:
投稿 (Atom)
failed to read qemu headerのときのメモ
かなり久々。。。 忘れないようにここに書きこんでおく。 ちょっとした手違いで libvirtでイメージを起動しようとすると failed to read qemu header なんておっしゃられて起動しない。。。 vmwareserverを使って...
-
かなり久々、別に放置していた訳じゃないです。 仕事の都合で、現在の開発環境に定義されているDDLスクリプトを抜き出す必要があったので、DBMS_METADATAパッケージを使用してみた。 前に(言っても2年くらい前)DB2で同じようなことをやった時にはdb2lookupっ...
-
unitテストを作ろうと思い、作って実行してみると途中で止まる。。。 「なんで?」 結局のところ、unitテストで実行しようとしたクラスにSystem.exit(int)があったのが原因だった。 それならば、System.exit(int)が効かなくなるおまじないはな...
-
今日は1年ぶりの仕事場でTracの設定をシコシコしてました。 さぁ、チケット発行・更新でメールを送ってやる!! と思ったら、まったく飛んでる気配なし。。。 とりあえず、ログをconsoleからfileへ変更 で、見てみたら notification on creatio...