鷹翔宇空

          學習和生活

          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 閱讀(2121) 評論(2)  編輯  收藏 所屬分類: 學習體會

          Feedback

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

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

          主站蜘蛛池模板: 东至县| 隆安县| 鄢陵县| 新民市| 于田县| 墨江| 丰都县| 景东| 鄂托克旗| 昭通市| 呼伦贝尔市| 晴隆县| 新竹县| 神木县| 江孜县| 青铜峡市| 苗栗县| 文山县| 左贡县| 类乌齐县| 凤山市| 夏河县| 林芝县| 金阳县| 长海县| 扶风县| 东宁县| 石林| 济源市| 辛集市| 陇南市| 诸暨市| 望谟县| 二手房| 林周县| 铜川市| 密云县| 馆陶县| 四平市| 深圳市| 阳江市|