DemoApp是部署在JBoss中7.1.1.FinalClassCastException異常:不能在JBoss中7.1.1.Final投oracle.sql.ARRAY到oracle.sql.ARRAY
Spring集成項目,結果從存儲返回過程包含oracle.sql.ARRAY的對象(對象的JBoss參考模塊的ojdbc罐)
,我試圖轉換爲oracle.sql.ARRAY其拋出異常
代碼:
URL resultJarLocation= resultMap.get("returnObj").getClass().getProtectionDomain().getCodeSource().getLocation();
URL appJarLocation = oracle.sql.ARRAY.class.getProtectionDomain().getCodeSource().getLocation();
System.out.println("resultJarLocation : " + resultJarLocation);
System.out.println("appJarLocation : " + appJarLocation);
oracle.sql.ARRAY returnObj=(oracle.sql.ARRAY)resultMap.get("returnObj");
例外:
org.springframework.messaging.MessageHandlingException: java.lang.ClassCastException: oracle.sql.ARRAY cannot be cast to oracle.sql.ARRAY
應用ARRAY類指在部署的應用程序ojdbc罐子。 其中作爲結果集數組類referreing ojdbc罐子的JBoss模塊 Sys系統輸出:
resultJarLocation : jar:file:/<JBOSS_HOME>/modules/com/oracle/ojdbc6/main/ojdbc6.jar
appJarLocation : vfs:/<JBOSS_HOME>/bin/content/DemoApp.war/WEB-INF/lib/ojdbc6.jar