Erro ao inserir Arquivo no Postgre. Help!

Bom dia,
Alguém sabe que exception é essa : java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper cannot be cast to org.postgresql.PGConnection

Ela ocorre quando faço um cast do meu obj de conexão para org.postgresql.PGConnection

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

[code]
try
{
Connection con=getConnection(dataSourceName);
con.setAutoCommit(false);
LargeObjectManager lobj = ((org.postgresql.PGConnection)con).getLargeObjectAPI();
int n = LargeObjectManager.READ - LargeObjectManager.WRITE;
int oid = lobj.create(n);
LargeObject obj = lobj.open(oid, LargeObjectManager.WRITE);
java.io.File file = new java.io.File(frmMci.getPathFileCube());
FileInputStream fis = new FileInputStream(file);
byte buf[] = new byte[2048];

                        int s, tl = 0;
                        while ((s = fis.read(buf, 0, 2048)) > 0) {
                        	obj.write(buf, 0, s);
                        	tl += s;
                        	}
                        	obj.close();
                        	PreparedStatement ps = con.prepareStatement("UPDATE \""+schemaname+"\".dw_titulo  SET im_cubo_nome =?, im_cubo=? WHERE id_dw_titulo=?");
                        	ps.setString(1, file.getName());
                        	ps.setInt(2, oid);
                        	ps.executeUpdate();
                        	ps.close();
                        	fis.close();
                        	con.commit();


                }
                catch (Exception e)
                {
                        e.printStackTrace();
                }
                [/code]

Alguém sabe como resolver esse problema?

?

ClassCastException ocorre quando o cast não é valido por exemplo

Long x = new Long();

Carro carro = (Carro)x;

Isso deve dar uma esta exception por que X não é um Carro.

provavelmente o retorno não é org.postgresql.PGConnection

Att.

Eita.Mas isso eu sei poh… rsr. Isso é o básico do básico que um programador tem que saber. rsrs brincadeira heim.

Bom mas acho que não fui muito claro.
O problema é o seguinte o cast está correto, pois esse é um exemplo de como inserir arquivos grandes no postgre usando o tipo de dado OID.
Todos os exemplos de como inserir arquivo grande no postgre utilizam esse cast

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

O problema é que está dando pau e provavelmente não é por causa do cast estar inválido, acredito que pode ser algo como configuração no banco postgre ou o driver está desatualizado. Bom, mas valeu. Se alguém souber exatamente o porque de não poder converter postem ae…
:?:

Estou com o mesmo erro. Conseguiu corrigir?

Alguem sabe ?