[Seasar-user:7452] Re: Seasar2.4.13 rc1 リリース
小林隆司
[E-MAIL ADDRESS DELETED]
2007年 4月 26日 (木) 15:20:57 JST
お世話になっております。小林です。
さっそくDBセッションレプリケーション機能を使わせて頂こうと思ったのですが、DB2ではテーブルの定義をどのように行ったら良いでしょうか。
DB2(バージョン8.2)では長いバイナリを格納するにはBLOBを使う方法しかなさそうなので、
CREATE TABLE S2SESSION(
SESSION_ID VARCHAR(255) NOT NULL,
NAME VARCHAR(255) NOT NULL,
VALUE BLOB(10485760),
LAST_ACCESS TIMESTAMP,
PRIMARY KEY(SESSION_ID,NAME))
というテーブルを作成したところ、DbSessionStateのgetAttributeメソッド内の
byte[] binary = (byte[])binaryData.get(name);
でClassCastExceptionが発生してしまいます。
BLOBにしてしまうと、binaryData.get(name)で返されるオブジェクトがcom.ibm.db2.jcc.b.bcというクラスになるため、これがbyte[]に変換できないのが原因だと思うのですが、なにか回避方法などはありますでしょうか。
Seasar-user メーリングリストの案内