Though it may not be advisable to directly work on the underlying vendor specific API such as oracle.jdbc.OracleCallableStatement, how would do you access it when situation arises.
Use the below snippet for a JBoss deployed application:
public static OracleCallableStatement getOracleCallableStatement(java.sql.CallableStatement callableStatement) throws SQLException {
OracleCallableStatement ocs = null;
if(callableStatement instanceof org.jboss.resource.adapter.jdbc.WrappedCallableStatement) {
org.jboss.resource.adapter.jdbc.WrappedCallableStatement wc = (org.jboss.resource.adapter.jdbc.WrappedCallableStatement) callableStatement;
Statement stmt = wc.getUnderlyingStatement();
ocs = (OracleCallableStatement) stmt;
}
return ocs;
}
For java doc, please read http://docs.jboss.org/jbossas/javadoc/4.0.2/org/jboss/resource/adapter/jdbc/WrappedCallableStatement.html
Use the below snippet for a Tomcat deployed application:
Hope this is useful. Let me know if comments.
Use the below snippet for a JBoss deployed application:
public static OracleCallableStatement getOracleCallableStatement(java.sql.CallableStatement callableStatement) throws SQLException {
OracleCallableStatement ocs = null;
if(callableStatement instanceof org.jboss.resource.adapter.jdbc.WrappedCallableStatement) {
org.jboss.resource.adapter.jdbc.WrappedCallableStatement wc = (org.jboss.resource.adapter.jdbc.WrappedCallableStatement) callableStatement;
Statement stmt = wc.getUnderlyingStatement();
ocs = (OracleCallableStatement) stmt;
}
return ocs;
}
For java doc, please read http://docs.jboss.org/jbossas/javadoc/4.0.2/org/jboss/resource/adapter/jdbc/WrappedCallableStatement.html
Use the below snippet for a Tomcat deployed application:
public static OracleCallableStatement
getOracleCallableStatement(java.sql.CallableStatement callableStatement)
throws SQLException {
OracleCallableStatement ocs = null;
OracleCallableStatement ocs = null;
if( callableStatement instanceof org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement) {
org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement dcs = (org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement) callableStatement;
ocs = (OracleCallableStatement)dcs.getInnermostDelegate();
}
org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement dcs = (org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement) callableStatement;
ocs = (OracleCallableStatement)dcs.getInnermostDelegate();
}
return ocs;
}
Hope this is useful. Let me know if comments.