ふたつの川うるおう日記
2007-10-05 (Fri)
_ [Java][Seasar] JdbcManager
重要ポイントは次の感じなのかな。
- ManyToOne、OneToMany、OneToOneサポート
- Pagerサポート
- DaoインタフェースからDxoによる条件句生成へ、Daoインタフェースさようなら?
- 例: @ConversionRule("managerId : managerId_GT")
あと測らないと判らないけど、conditionsをMapで渡すことで従来実行時にDTOインスタンスからリフレクションで値取得してた部分のコストが低減されるかも?
注意しないといけなさそうな点は次の感じかな。
- Page、ActionクラスでjdbcManagerを使う場合、注意しないとロジックの分離がなし崩しになり、生SQLを直接書いてる感じになっちゃうかも?
- 共通部分はService、Logicで!
- エンティティクラスごとに生成したAutoSelectのインスタンスを使い回すのはNG。実行時ごとにjdbcManager.from(エンティティクラス)から手順を踏む。
- 例: ServiceやLogicにDaoインスタンスを持たせてた部分をAutoSelectのインスタンスに置き換えて使い回すのはダメ。
従来のS2Daoより出来ることが増えて良い感じだけど、Daoインタフェースが無くなるのに抵抗がある人がいるかもしれないっと思いました。もちろんS2Daoも今後も継続していかれるとのことなので好きな方を使えばOK。
2007-10-11 (Thu)
_ [Seasar] Seasar Confrence 2007 Autumn
11月11日(日)に開催されるSeasar Confrence 2007 Autumnのセッション一覧と申し込み受付が開始しました。
新しい会場でかなりゆったり見れると思います(^^)。どのセッション見ようかなー。
2007-10-20 (Sat)
_ [Java][Seasar] S2DirectoryのAccess Object名の変更検討
現在のDirectoryDaoだと、冗長だったり、S2DaoのDaoと紛らわしかったり、トラブルの原因となったりするので、変更を検討したいと思います。
変更といってもCreatorを追加するだけなので、既にDirectoryDaoで使っている方もcreator.diconを変更しない限り今まで通りで大丈夫です。
変更案としてid:koichikさんにご提案いただいたNaoにしようかなと思っていましたが、NamingだとDNSの色が強いので、1文字多くなっちゃいますがDiaoにしようかなと思ってます。
- 関連: [CONTAINER-99]
2007-10-21 (Sun)
_ [Server][Admin] OpenSSL 0.9.8f + OpensSSHに注意
OpenSSL 0.9.8fのソースコードに埋め込まれているバージョン表記に問題があり、OpenSSHが再コンパイルし直さないと正常に動作しなくなります。その後、リリースされたOpenSSL 0.9.8gは問題が修正されていますが、既にOpenSSL 0.9.8fにアップデートしてOpenSSHを再コンパイルしていた場合は、また問題が出ます。以下、失敗パターンと成功パターンのログ。
- NG: OpenSSL 0.9.8e -> OpenSSL 0.9.8f
- OpenSSHを再コンパイルすれば直りますが、その前にOpenSSL 0.9.8gを入れてしまえば問題は出ません。
# /etc/init.d/sshd restart
Stopping sshd: [ OK ]
Starting sshd: OpenSSL version mismatch. Built against 90805f, you have 908070
[FAILED]
- NG: OpenSSL 0.9.8f + OpenSSH再コンパイル済み -> OpenSSL 0.9.8g
- OpenSSHを再コンパイルすれば直ります。
# /etc/init.d/sshd restart
Stopping sshd: [ OK ]
Starting sshd: OpenSSL version mismatch. Built against 908070, you have 90807f
[FAILED]
- OK: OpenSSL 0.9.8e -> OpenSSL 0.9.8g
# /etc/init.d/sshd restart Stopping sshd: [ OK ] Starting sshd: [ OK ]
また、OpenSSHには、--without-openssl-header-check というオプションがありますが、これが付いてコンパイルされたOpenSSHであってもこの問題は起こるようです。
[2007/10/23追記]: --without-openssl-header-check オプションはconfigure時のチェックを飛ばすもので、コンパイルされたバイナリ実行時には影響しないそうです。
2007-10-23 (Tue)
_ [Java][Seasar] S2DirectoryのAccess Object名の変更 保留
すいません、20日に書いたS2DirectoryのAccess Object名の変更ですが、Diaoが発音しにくいと僕の周りで不評だったので現状のDirectoryDaoのままでまだいきたいと思います。。
2007-10-24 (Wed)
_ [Server][Seasar] Shuttle SD33G5のPCI Express x16スロットがビデオカード専用?
3ware 9650SE-2LP(RAIDカード)を挿してもカードのBIOS画面が起動できない。。マザーのジャンパーピンでオンボードビデオから、PCI Express x16に挿したビデオを使うように設定すると、起動時にRAIDカードのアクティビティLEDが光るものの、それだとビデオカードが無くなっちゃうので今度は画面が見えない…。PCI Express x16が1スロットしかないので、これはビデオカード専用になってるのかな。
このマシン2台で新しいサーバ作るつもりだったけど、別のマシンを探します。年内中には負荷が高いSeasarのメインサーバをどうにか交換したいです。
2007-10-25 (Thu)
_ [大学] Adobe、「Adobe Flex Builder 2」を学生や教育機関に無償提供へ
id:makotanさんのとこより。
これは良い。試しに使ってみて良い感じだったら、大学のラボのデスクトップと来年の新入生ノーパソ全台(計450台ぐらい)に入れても良いかも。たぶん当面はこれを効果的に使った講義やトレーニングを出来る人がもの自体が新しすぎていない可能性が高いので、とりあえず入れておいて気付いて興味持った学生が使ったり、そのうち誰かが講義で使ってくれたりするのを祈るってことで。
あとは国内でいつから開始されるか。米本社で発表されると国内での開始にラグがある時があって、以前SunのAcademic Initiativeプログラムが発表されてすぐに教授経由で申し込んで貰ったら、まだ準備が出来てなかったのか返事が来なくて、何回かお願いして貰ったものの結局うやむやになって参加せずに終わってそのままだったり・・・。良い機会だからSunのプログラムももう1回頼んでみようかな。
2007-10-31 (Wed)
_ [Windows][Java] Windows Vista 64-bit版でEclipse
とりあえず大学の環境をWindows Vista 64-bit版に移行しました。だいたい問題無く、これなら大丈夫かなーっと思ってたらEclipseがとても大丈夫じゃありませんでした。
- OK: JDK 1.4.2_16 32-bit版 + Eclipse 3.3.1.1 32-bit版
- NG: JDK 1.5.0_13 64-bit版 + Eclipse 3.3.1.1 32-bit版
- NG: JDK 1.6.0_03 64-bit版 + Eclipse 3.3.1.1 32-bit版
- OK: JDK 1.4.2_16 32-bit版 + Eclipse 3.3.1.1 32-bit版 WPF版
- NG: JDK 1.5.0_13 64-bit版 + Eclipse 3.3.1.1 32-bit版 WPF版
- NG: JDK 1.6.0_03 64-bit版 + Eclipse 3.3.1.1 32-bit版 WPF版
- NG: JDK 1.4.2_16 32-bit版 + Eclipse 3.4M2 64-bit版
- OK: JDK 1.5.0_13 64-bit版 + Eclipse 3.4M2 64-bit版
- OK: JDK 1.6.0_03 64-bit版 + Eclipse 3.4M2 64-bit版
- JDK 64-bit版: jdk-*-amd64.exe
- Eclipse 64-bit版: eclipse-*-win32-x86_64.zip
- 環境
- JDK 1.5, 1.6はSun JDK 64-bit版
- Eclipseの起動オプション例: C:\Software\Eclipse\eclipse.exe -Xmx512m -Xms256m -data E:\Java\Eclipse\Workspace\Web -configuration E:\Java\Eclipse\Configuration -vm C:\Software\Java\jdk-1.5\jre\bin\javaw.exe
NGなのは起動時にエラー吐いて落ちます。今現在の環境でVista 64-bit版環境でJDK 1.5以降 + Eclipseで動かしたい場合は、Stable版は諦めるしかないようです。また、SWTのVista対応がまだ完全じゃなくて一部レイアウトが崩れたりします。
- 例: Subversiveの認証ダイアログでユーザ名のテキストフィールドが崩れて見えない図
- Tab キー で移動して入力すれば一応使えます。
- [11/09追記] Eclipse 3.4M3で修正入って直った!
- [11/26追記] Windows Vista 64-bit版でEclipseベースのソフトウェア対応に続く
_ Software Design 2007/11号の第2特集5章 DRBD+HeartbeatのGFS2環境
アグレッシブな記事です。ただ記事中に /etc/lvm/lvm.conf のlocking_typeを1から3に変更する説明が無かったです。確かデフォルトだと1になってるため、GFS2のロック情報のやりとりが上手くいかなかった気がします。
- 変更
perl -pi -e 's|locking_type = 1|locking_type = 3|' /etc/lvm/lvm.conf
- 詳細
# Type of locking to use. Defaults to local file-based locking (1). # Turn locking off by setting to 0 (dangerous: risks metadata corruption # if LVM2 commands get run concurrently). # Type 2 uses the external shared library locking_library. # Type 3 uses built-in clustered locking. locking_type = 3
最新の環境だとRPM入れた時に書き換えてくれるのかも?



