2016-06-23 9 views
0

Ich benutze Wildfly8 und postgresql als meine DB. Ich brauche org.postgresql.PGConnection, um die LISTEN/NOTIFY-Funktionalität von postgresql zu implementieren.Verbindung Cast Ausnahme Wildfly

Mein Code sieht so aus:

private Connection conn; 
private org.postgresql.PGConnection pgconn; 
Conn = entityManager.unwrap(java.sql.Connection.class); 
this.pgconn = conn.unwrap(org.postgresql.PGConnection.class); 

Ich erhalte folgende Ausnahme:

java.sql.SQLException: Not a wrapper for: org.postgresql.PGConnection

Was hier das Problem sein kann?

+0

Beim Drucken des Wertes von Conn, erhalte ich: : [email protected] –

Antwort

0

Es ist möglich, dass in diesem Fall Ihre erste Instanz von Connection ein Proxy-Objekt ist. Wenn Sie Wildfly verwenden Sie müssen dies tun:

((WrappedConnection)conn).getUnderlyingConnection().unwrap(PgConnection.class); 

auch Sie in dem Jboss-Deployment-structure.xml so etwas wie dies erklären muss:

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-deployment-structure> 
    <deployment> 
     <dependencies> 
      <module name="org.jboss.ironjacamar.jdbcadapters" /> 
      <module name="org.postgresql" /> 
     </dependencies> 
    </deployment> 
</jboss-deployment-structure> 
Verwandte Themen