- PR -

Struts GenericConnection

1
投稿者投稿内容
いわ
会議室デビュー日: 2003/09/22
投稿数: 18
投稿日時: 2003-11-02 16:17
こんにちは。

現在、Strutsを使ってServletを作っています。

PostgreSQLにラージオブジェクトを書きたいのですが、
その際 java.sql.Connectionが必要になります。

struts-config.xmlにデータソースを書き、
DataSource dataSource = (DataSource)context.getAttribute(Globals.DATA_SOURCE_KEY);
Connection con = dataSource.getConnection();

のようにして、Connectionを取得していますが、
これはorg.apache.struts.legacy.GenericConnectionで、この後に

LargeObjectManager lobj =
((org.postgresql.PGConnection)conn).getLargeObjectAPI();

のように、PGConnection にキャストしたいのですが、出来ません。

どのようにしたら良いかご存知の方、おられますでしょうか・・・。
いわ
会議室デビュー日: 2003/09/22
投稿数: 18
投稿日時: 2003-11-02 16:34
書き忘れましたが、
GenericConnection.conn にオリジナルのConnectionが入っていますが、
protected です。

GenericConnection.getConnection() がconnを返すのですが、これもprotectedで、使えません。
会議室デビュー日: 2003/03/04
投稿数: 4
お住まい・勤務地: 柏<->浜松町
投稿日時: 2003-11-04 13:32
こんにちわ。

dbcpでラージオブジェクトが扱えない、ということですよね?

私もPostgreSQLにて同様の現象が出てます。
結局時間がなかったのでラージオブジェクト(oid)を使う際には通常のConnectionを取得する、という方法で対処しました。

とんび
常連さん
会議室デビュー日: 2003/07/11
投稿数: 32
投稿日時: 2003-11-04 13:47
引用:

聖さんの書き込み (2003-11-04 13:32) より:
こんにちわ。

dbcpでラージオブジェクトが扱えない、ということですよね?

私もPostgreSQLにて同様の現象が出てます。
結局時間がなかったのでラージオブジェクト(oid)を使う際には通常のConnectionを取得する、という方法で対処しました。




Strutsのほうはよくわからないのですが、dbcpでは
conn = dataSource.getConnection();
pgConn = (PGConnection)((DelegatingConnection)conn).getInnermostDelegate();
で出来るとおもいます。
会議室デビュー日: 2003/03/04
投稿数: 4
お住まい・勤務地: 柏<->浜松町
投稿日時: 2003-11-04 18:34
引用:

とんびさんの書き込み (2003-11-04 13:47) より:
引用:



Strutsのほうはよくわからないのですが、dbcpでは
conn = dataSource.getConnection();
pgConn = (PGConnection)((DelegatingConnection)conn).getInnermostDelegate();
で出来るとおもいます。



上記のようにpgConnを取得後、

LargeObjectManager lobj = pgConn.getLargeObjectAPI();

でいけました。どうも調べが足りませんでした。。

とんびさん、ありがとうございました!
1

スキルアップ/キャリアアップ(JOB@IT)