0
我想創建oracle連接。目前我傳遞jdbc連接來創建結構描述符,在這裏我得到如下異常。所以爲了避免這種情況,需要創建一個java.sql.connection或oracle連接,而不是從數據源獲取。如何在部署在JBoss Server中的Spring應用程序中創建Oracle連接? (WrappedConnectionJDK6不能轉換爲oracle.jdbc.OracleConnection)
org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6不能轉換到oracle.jdbc.OracleConnection
java.lang.ClassCastException: org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6 cannot be cast to oracle.jdbc.OracleConnection
at oracle.sql.StructDescriptor.createDescriptor(StructDescriptor.java:160)
at oracle.sql.StructDescriptor.createDescriptor(StructDescriptor.java:131)
下面是一段代碼,其中上述異常即將到來。
Connection conn = getDataSource().getConnection();
StructDescriptor itemDescriptor = StructDescriptor.createDescriptor(("EMP_DATA", conn);
StructDescriptor addressDescriptor = StructDescriptor.createDescriptor("EMP_ADDRESS", conn);
ArrayDescriptor descriptor = ArrayDescriptor.createDescriptor("EMP_TABLE", conn);
/** Creating Objects */
Object[] itemAtributes = new Object[] {
"XXX", "XXX", new STRUCT(addressDescriptor, conn, new Object[] {
"XXX", "XXX", "XXX" }) };
STRUCT itemObject1 = new STRUCT(itemDescriptor, conn, itemAtributes);
itemAtributes = new Object[] {
"YYY", "YYY", new STRUCT(addressDescriptor, conn, new Object[] {
"YYY", "YYY", "YYY" }) };
STRUCT itemObject2 = new STRUCT(itemDescriptor, conn, itemAtributes);
STRUCT[] idsArray = {
itemObject1, itemObject2 };
ARRAY array_to_pass = new ARRAY(descriptor, conn, idsArray);
/** Calling Procedure */
ps = (OraclePreparedStatement) conn.prepareStatement("begin Pr_save_emp(:x); end;");
在此regared的幫助將不勝感激。
@GMR這篇幫助你嗎?如果是正確答案,請考慮接受,否則請提供您的解決方案。謝謝。 – n1ckolas 2013-02-28 10:46:31
@Nickolas,感謝您的解決方案。它現在適用於我。可以請提供連接方法的API鏈接。 – 2013-03-04 07:15:59
@GMR對不起,但你指的是什麼API? – n1ckolas 2013-03-04 09:46:23