Problem while trying to load or access OracleTypes CURSOR value เจอ error ตอน run บน weblogic 12c ครับ
จาก Error ด้านล่างสังเกตุตรงนี้ครับ
สาเหตุเกิดจาก : Caused by: java.lang.IllegalAccessException: Class org.hibernate.dialect.Oracle9Dialect
วิธีแก้ก็ให้เปลี่ยน dialect จาก
Oracle9Dialect เป็น Oracle10gDialect
ถ้า Lib hibernate เก่ามากจนหา Oracle10gDialect ไม่เจอ
ให้ Upgrade เป็น Lib ตัวนี้ครับ
hibernate-core-3.3.2.GA.jar
ปัญหา เจอตอนที่เปลี่ยนจาก Tomcat มา Run บน weblogic 12c ครับ
ได้ Error ตามด้านล่าง
Caused by: org.hibernate.HibernateException: Problem while trying to load or access OracleTypes.CURSOR value
at org.hibernate.dialect.Oracle9Dialect.registerResultSetOutParameter(Oracle9Dialect.java:268)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1574)
at org.hibernate.loader.Loader.doQuery(Loader.java:661)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
at org.hibernate.loader.Loader.doList(Loader.java:2145)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
at org.hibernate.loader.Loader.list(Loader.java:2024)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:111)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1655)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:164)
Caused by: java.lang.IllegalAccessException: Class org.hibernate.dialect.Oracle9Dialect can not access a member of class oracle.jdbc.driver.OracleTypes with modifiers ""
at sun.reflect.Reflection.ensureMemberAccess(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.hibernate.dialect.Oracle9Dialect.registerResultSetOutParameter(Oracle9Dialect.java:266)