天天看點

Sturts2和Hibernate整合可能會出現的錯誤

1、異常1

The server encountered an internal error () that prevented it from fulfilling this request.

(此異常為上層錯誤,具體解決辦法要看底層異常資訊才能解決,在開發調試過程中,要學會看異常,越是底層的異常資訊越能準确描述錯誤資訊;)

java.lang.reflect.InvocationTargetException

(InvocationTargetException 是一種包裝由調用方法或構造方法所抛出異常的受查異常。)下面會有具體原因

java.lang.NoSuchMethodError: antlr.collections.AST.getLine()

(原因:Structs 1.3 (structs 2)和Hibernate 3.2(或更高版本)中的JAR包裡antlr2.7.2 與 antlr2.7.6 沖突,隻要删除Structs 1.3中的低版本的antlr2.7.2就可以了。

解決方法:MyEclipse 下,windows-->preferences-->在文本框中搜尋struts2-->選擇 antlr2.7.2-->remove)

2、異常2

2017-06-17 09:57:46,560  WARN (org.hibernate.dialect.Oracle9Dialect:60) - The Oracle9Dialect dialect has been deprecated; use either Oracle9iDialect or Oracle10gDialect instead

(不影響功能)

打開Hibernate.cfg.xml檔案,将

                    <property name="dialect">

                                org.hibernate.dialect.Oracle9Dialect

                     </property>

改為下面這樣,控制台就不會出現如上提示。

                    <property name="dialect">

                                org.hibernate.dialect.Oracle9iDialect

                     </property>

又改為這樣,控制台也不會出現如上提示。

                    <property name="dialect">

                                org.hibernate.dialect.Oracle10gDialect

                     </property>

繼續閱讀