SSH項目遷徙至JBoss,改成Struts+EJB項目總結

tags:    時間:2013-12-16 17:48:03
SSH項目遷移至JBoss,改成Struts+EJB項目總結
這學期我們有個Web企業應用課程,也就是EJB,需要做一個課程作業。利用三個Bean(會話Bean、實體Bean、消息驅動Bean)實現。
 
以前做了好幾個SSH項目,心想這下輕鬆了,可以把SSH中的Hibernate改成EJB,其餘不需要做什麼調整,課別高興得太早,苦戲還在後頭。
 
最開始把項目部署到JBoss下,一大堆錯,在網上搜了下,發現一哥們也遇到了這個問題,很類似,可惜沒有解決辦法。應該說很幸運,就是沒有解決辦法,才有了下面的一些探討。原帖地址:http://bbs.csdn.net/topics/370099631
 
折騰了一番,Spring是肯定不能用,Hibernate也不能,只有Struts和EJB結合了。再想想自己的編程方式是不是不對啊,只有一個項目,代碼很亂,不易管理,所以採用伺服器和客戶端的方式。伺服器負責對資料庫的操作,接收消息並進行處理,客戶端用於數據的展示。思路明了了,項目結構也清晰了,開始遷移。
 
 
啟動JBoss出現異常后,解決列表。
EJB項目出現「org.hibernate.LazyInitializationException: could not initialize proxy - no Session」異常解決
http://blog.csdn.net/wentasy/article/details/8473250
 
啟動JBoss出現「java.lang.noclassdeffounderror org/apache/commons/lang3/stringutils jar」解決
http://blog.csdn.net/wentasy/article/details/8473274
 
啟動JBoss出現「java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils」解決
http://blog.csdn.net/wentasy/article/details/8473287
 
啟動JBoss出現「java.lang.RuntimeExceptionjava.lang.reflect.InvocationTargetException」解決
http://blog.csdn.net/wentasy/article/details/8474329
 
啟動JBoss出現「Unable to load configuration struts-default.xml」異常解決
http://blog.csdn.net/wentasy/article/details/8474339
 
mapped-name/lookup/jndi-name and any ResourceProvider could』t process resource-env-ref named
http://blog.csdn.net/wentasy/article/details/8475397
 
java.lang.NoClassDefFoundError: org/hornetq/api/core/client/ClientSession解決
http://blog.csdn.net/wentasy/article/details/8475407
 
java.lang.LinkageError: loader constraint violation解決
http://blog.csdn.net/wentasy/article/details/8475418
 
啟動JBoss出現「java.lang.NoClassDefFoundError: javax/transaction/TransactionManager」解決
http://blog.csdn.net/wentasy/article/details/847543
 
 
 
折騰了很久,最後是遷移成功了,遇到和解決的問題見上訴列表。
 
經過這次項目的改造,特此總結以下幾點:
1.       SSH項目能在Tomcat下正常運行,不代表可以在JBoss下正常運行;
2.       遇到問題不要著急,先分析,試著自己解決,實在不行再藉助網路;
3.       做一件事之前要想好思路,不要盲目地去做;
4.       做Web開發一拋異常就是一大堆,此時不要氣餒,要有耐心;
5.       學習EJB學習的是思想,這一點切記;
6.       採用伺服器和客戶端的方式可以要你的項目結構發現意想不到的變化;
7.       如果出現java.lang.noclassdeffounderror org/apache/commons/lang3/stringutils jar異常后加入了commons-lang3-3.1.jar解決了問題,但又報java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils異常,此時又把commons-lang-2.5.jar加進去即可,兩個jar包並存是可以的,而且就我遇到的情況來看,只有兩個都加入了才不會報錯;
8.       

推薦閱讀文章

Bookmark the permalink ,來源:互聯網