0

ステートレス Bean 内で、OID フィールドを持つテーブルに挿入しようとしています。以下のスニペットを見つけてください。

DataSource dataSource = (DataSource) context.lookup(JNDI_NAME);
Connection connection = dataSource.getConnection();

PreparedStatement statement = connection.prepareStatement(sql.toString());

byte[] streamOutput = responseData.getBytes();
LargeObjectManager largeObjectManager = ((org.postgresql.PGConnection)connection).getLargeObjectAPI();
long oid = largeObjectManager.createLO(LargeObjectManager.READ | LargeObjectManager.WRITE);
LargeObject largeObject = largeObjectManager.open(oid, LargeObjectManager.WRITE);
largeObject.write(streamOutput);
largeObject.close();

以下の例外が発生していますLargeObjectManager largeObjectManager = ((org.postgresql.PGConnection)connection).getLargeObjectAPI();

org.jboss.jca.adapters.jdbc.jdk6.WrappedConnectionJDK6 は org.postgresql.PGConnection にキャストできません: java.lang.ClassCastException: org.jboss.jca.adapters.jdbc.jdk6.WrappedConnectionJDK6 は org.postgresql にキャストできません。 PGコネクション

Stateless Bean の TransactionManagementType は Container に設定されます。

Postgresql 9.1 と JBoss AS7.1 を使用しています

誰か助けてくれませんか??

4

1 に答える 1