常見問題彙總 java.lang.LinkageError: loader constraint violation: when resolving interface method異常

1.linkage Error

 java.lang.LinkageError: loader constraint violation: when resolving interface method異常

javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation:when resolving interface method "javax.servlet.jsp

嚴重: Servlet.service() for servlet jsp threw exception

解決辦法:

 就是你不能在項目的lib目錄中再包含 服務器類提供過jar  比如jsp-api.jarel-api.jarservlet-api.jar, 等等


jbpm4 在tomcat6 下面ssh2 這個錯誤!

原因是項目中WEB-INF\lib中的三個jar包(juel.jar, juel-engine.jar, juel-impl.jar)和tomcat6下lib中jar包(el-api.jar)衝突

解決方法:

方法一:換成tomcat5.5 一點問題也沒有了

方法二:將juel.jar, juel-engine.jar, juel-impl.jar這三個包複製到tomcat6下lib中,並刪除原來的el-api.jar

2,Exception in thread "main" java.lang.LinkageError錯誤的解決

解決辦法如下:首先在main函數中輸出兼容包的目錄所在: 
System.out.println(System.getProperty("java.endorsed.dirs")); 
我的路徑爲:C:\Program Files\Java\jdk1.6.0\jre\lib\endorsed 
然後到這個目錄的上層(這裏爲lib目錄)建立endorsed文件夾,拷貝文件jaxb-api.jar到endorsed文件夾,OK搞定

3.java.io.EOFException解決

嚴重: IOException while loading persisted sessions: java.io.EOFException 

嚴重: Exception loading sessions from persistent storage 

分析:EOFException表示輸入過程中意外地到達文件尾或流尾的信號,導致從session中獲取數據失敗。異常是tomcat本身的問題,由於tomcat上次非正常關閉時有一些活動session被持久化(表現爲一些臨時文件),在重啓時,tomcat嘗試去恢復這些session的持久化數據但又讀取失敗造成的。此異常不影響系統的使用。 
將tomcat6/work/Catalina/localhost/yourProjectName/SESSIONS.ser刪除。如果正常關閉服務端,該文件是自動刪除的。 

注:yourProjectName 是你當前正在工作的Web項目名稱。 

考慮到每個人的tomat的工作目錄不同,建議在“搜索”功能中找到你的SESSIONS.ser文件,而且只需要刪除../yourProjectName/下的SESSIONS.ser即可.

4.SESSIONS.ser 的問題

 (1) Tomcat/work/Catalina/localhost/工程名/SESSIONS.ser

     session未超時的情況下服務器關閉大的時候被序列化爲工程名/SESSIONS.ser 啓動的時候再加載進來,加載的時候報錯了,把該文件刪除,重新啓動    

     補充:有時候不一定是SESSIONS.ser,我的那個下面就多了一個tldCache.ser,反正將裏面以.ser結尾的都刪除就是的

 (2)tomcat 啓動的問題(org.apache.catalina.session.StandardManager.doLoad: IOException  

  while loading persisted sessions)


5.spring錯誤

java.lang.classNotFound  org.springframework.web.servlet.dispatcherServlet

javax.servlet.serveltException wrapper can not found   org.springframework.web.servlet.dispatcherServlet

解決辦法:

因爲缺少spring-webmvc.jar包所致

6. ERROR LazyInitialize:63 Exception initializing proxy

Session session = session.openSession();

tx = session.beginTransaction();

Customer cust = (Customer)session.get(Customer.class,new Long(1));

tx.commit();

session.close();

//拋出異常,沒有被初始化遊離態的集合,延遲加載(數據庫關閉)

Iterator order = customer.getOrders();iterator();

 

7.java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.FilterDisp

這個一般是由於struts的包

struts-spring-plugn.jar

8.

org.springframework.dao.InvalidDataAccessResourceUsageException: Could not execute JDBC batch update; nested exception is org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
	org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:630)
	org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
1.字段是String(varchar2)類型, 沒有加上單引號
2.數據庫中不存在相關的表或者列,樓主多檢查檢查
9. aah整合json時出現struts-json-plugn.jar與struts-core-2.2.3不兼容問題

ava.lang.ClassNotFoundException: com.opensymphony.xwork2.util.TextUtils

Java代碼  收藏代碼
  1. java.lang.ClassNotFoundException: com.opensymphony.xwork2.util.TextUtils:  

這是struts 的版本錯誤,因爲用的 xwork2.1.6-core.jar 中不存在 TextUtils 類,這裏把  xwork2.1.2-core.jar 也加到 classpath 中, xwork2.1.2-core.jar 中包含這個東西,我們用的是 xwork2.1.6 的 jar ,當要用到 TextUtils 時,就去 xwork2.1.2-core.jar 中找。 

發現這樣貌似也不行呀!!! 

解決了,OK!!!! 
原因:jsonplugin-0.34.jar 配合 struts2-core-2.1.8.1.jar 使用的情況下報的異常,但以前的項目中jsonplugin-0.34.jar 配合 struts2-core-2.1.6.jar 使用不會出現這樣的異常 

解決方法:去掉jsonplugin-0.34.jar,使用struts2-json-plugin-2.1.8.1.jar 和 json-lib-2.1.jar,struts2-junit-plugin-2.1.8.jar三個包 
9.antlr-2.7.6.jar缺失表現:
並且會報NoClassDefFoundError: antlr/ANTLRException錯誤

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章