鷹翔宇空

          學習和生活

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            110 Posts :: 141 Stories :: 315 Comments :: 1 Trackbacks

          這兩天同事的項目工程突然出現了故障,web包發布后,不斷地拋異常,由于剛好我在修改登陸的頁面,所以他們不約而同地認為是我搞得鬼,天可憐見,我可是一安分守己之公民啊,沒辦法,只好削尖了頭往問題里鉆,但是愣沒看出個所以然,,好暈阿。于是拿到其他同事的機器上面部署,一切OK,更暈!!!!!!
          第一次打開index.jsp時,異常如下:
          Error 500--Internal Server Error
          java.lang.ExceptionInInitializerError
          ?at jsp_servlet.__login._jspService(__login.java:209)
          ?at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
          ?at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
          ?at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
          ?at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:446)
          ?at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
          ?at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6354)
          ?at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
          ?at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
          ?at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
          ?at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
          ?at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
          ?at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
          Caused by: java.util.MissingResourceException: Can't find bundle for base name org.apache.struts.taglib.html.LocalStrings, locale zh_CN
          ?at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:804)
          ?at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:773)
          ?at java.util.ResourceBundle.getBundle(ResourceBundle.java:511)
          ?at org.apache.struts.util.MessageResources.(MessageResources.java:102)
          ?at org.apache.struts.util.MessageResources.getMessageResources(MessageResources.java:579)
          ?at org.apache.struts.taglib.html.FormTag.(FormTag.java:140)
          ?... 13 more
          然后刷新了一下頁面,馬上就變了:
          java.lang.NoClassDefFoundError
          ?at jsp_servlet.__login._jspService(__login.java:209)
          ?at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
          ?at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
          ?at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
          ?at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
          ?at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6354)
          ?at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
          ?at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
          ?at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
          ?at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
          ?at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
          ?at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)

          這個錯誤實屬可恨,給我造成了很大的誤解,初一看,哦,很明顯嘛,是Struts標簽的問題,沒難度的,打開頁面開始查找,一看,原來是說formbean找不到了,不可能阿,這怎么會找不到呢?,這個用了幾年了,不可能出問題阿!
          又調了幾次,實在受不了了,干脆把struts標簽搞掉算了,這下問題又變了,說是資源文件找不到了,很可惜,這個異常沒有記錄下來。
          。。。。。。重裝了服務器,仍然不行,痛苦啊!
          后來換了個用戶登錄了一下,驚奇的發現竟然可以正常運行,,恩,還不算太壞,于是才發現原來是環境變量出了問題,classpath配置到了另一個項目中,。去掉了這個環境變量后,一切OK!

          做項目時,真的要細心細心再細心阿,環境變量這個東西,太容易在項目開發過程中忽視了,但有時問題就偏偏出在這上面,這樣當問題出現時,就很難真正的發現錯誤的源泉,解決起來只能靠時間和經驗了,同時,希望大家在做項目時盡量不要交叉進行,否則,出現莫名其妙的問題的幾率太大了!

          特寫于此,以對自己以示警戒!

          posted on 2006-03-20 16:32 TrampEagle 閱讀(2116) 評論(2)  編輯  收藏 所屬分類: 學習體會

          Feedback

          # re: 環境變量classpath引發的一場災難 2006-03-20 19:41 thinkbase
          所以,, 我從來都不配置系統級的CLASSPATH,, 都是在啟動腳本里面配置的,, 這樣不會混亂掉  回復  更多評論
            

          # re: 環境變量classpath引發的一場災難 2006-03-21 08:30 TrampEagle
          @thinkbase
          是啊,最好不要配置系統級的CLASSPATH,但是我們自己不配置,卻不能阻止他人配置,我這里就是很好的例子。最好能形成一種規范來進行約束,這樣在項目開發過程中才會盡可能少的出那些莫名其妙的問題,所以在這一方面,系統級的CLASSPATH只是一個方面而已!  回復  更多評論
            

          主站蜘蛛池模板: 江源县| 姚安县| 鄄城县| 乡宁县| 双鸭山市| 邹平县| 正宁县| 石台县| 平昌县| 台北市| 大关县| 大理市| 余江县| 勃利县| 巴马| 西贡区| 永川市| 邓州市| 石景山区| 营口市| 衡山县| 静海县| 耒阳市| 峨边| 北安市| 嘉禾县| 巴马| 乌鲁木齐市| 邹平县| 永兴县| 济源市| 安宁市| 晴隆县| 教育| 安吉县| 永顺县| 福鼎市| 睢宁县| 信阳市| 桃源县| 塔河县|