隨筆 - 117  文章 - 72  trackbacks - 0

          聲明:原創作品(標有[原]字樣)轉載時請注明出處,謝謝。

          常用鏈接

          常用設置
          常用軟件
          常用命令
           

          訂閱

          訂閱

          留言簿(7)

          隨筆分類(130)

          隨筆檔案(123)

          搜索

          •  

          積分與排名

          • 積分 - 155811
          • 排名 - 390

          最新評論

          [標題]:[轉]Struts2.1.6 - Unable to load configuration
          [時間]:2009-7-7
          [摘要]:Unable to load configuration. - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
          [關鍵字]:struts、spring、configuration、struts-default、MVC、Apache,框架、SSH
          [環境]:Struts2.1.6、JDK6、Tomcat6
          [作者]:Winty (wintys@gmail.com) http://www.aygfsteel.com/wintys

          [錯誤]:
              在Web Project中加入了以下5個Struts2核心jar:
              struts2-core-2.1.6.jar
              xwork-2.1.2.jar
              freemarker-2.3.13.jar
              ognl-2.6.11.jar
              commons-logging-1.0.4.jar
              啟動Tomcat時,提示如下錯誤信息:

          2009-7-7 19:55:12 org.apache.catalina.core.StandardContext filterStart
          嚴重: Exception starting filter MyStruts2
          Unable to load configuration. - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
              at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
              at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360)
              at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:403)
              at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190)
              at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
              at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
              at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
              at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3693)
              at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
              at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761)
              at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:741)
              at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
              at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
              at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
              at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
              at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
              at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
              at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
              at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1023)
              at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
              at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1015)
              at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
              at org.apache.catalina.core.StandardService.start(StandardService.java:448)
              at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
              at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:597)
              at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
              at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
          Caused by: Unable to load bean: type:com.opensymphony.xwork2.UnknownHandler class:org.apache.struts2.convention.ConventionUnknownHandler - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
              at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:222)
              at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
              at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:165)
              at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
              ... 30 more
          Caused by: Bean type interface com.opensymphony.xwork2.UnknownHandler with the name default has already been loaded by bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-codebehind-plugin-2.1.6.jar!/struts-plugin.xml:29:122 - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
              at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:206)
              ... 33 more
          2009-7-7 19:58:07 org.apache.catalina.core.StandardContext filterStart
          嚴重: Exception starting filter MyStruts2
          Unable to load configuration. - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
              at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
              at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:360)
              at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:403)
              at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190)
              at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
              at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
              at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
              at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3693)
              at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
              at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1105)
              at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1203)
              at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293)
              at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
              at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1307)
              at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1571)
              at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1580)
              at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1560)
              at java.lang.Thread.run(Thread.java:619)
          Caused by: Unable to load bean: type:com.opensymphony.xwork2.UnknownHandler class:org.apache.struts2.convention.ConventionUnknownHandler - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
              at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:222)
              at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
              at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:165)
              at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
              ... 17 more
          Caused by: Bean type interface com.opensymphony.xwork2.UnknownHandler with the name default has already been loaded by bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-codebehind-plugin-2.1.6.jar!/struts-plugin.xml:29:122 - bean - jar:file:/F:/Web/homesite/jsp/struts/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml:30:119
              at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:206)
              ... 20 more

          [原因&解決]:
               這是apache的失誤。按照官方文檔說明,運行Struts2必須加載5個核心jar包,也就是咱們一開始拷貝的5個jar包,如果你用的是 Struts2之前的版本是沒有問題的,但是如果去下載這個新版本,就會報如上錯誤,因為還需要加載另外兩個jar包,可是官方的說明文檔沒有更新。

              解決方案:在Struts2的解壓縮文件夾內的lib文件夾里, 我們找到下列2個jar : commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar,把他們復制到項目根目錄下的"WEB-INF"lib"文件夾內。

              既然少了jar,圖省事把包struts lib下的jar全都復制到工程目錄中。這樣做又會出現類似上面的錯誤提示。所以如非必要,不要加載其它的jar,這大概是struts2.1.6的bug。一般只需加載以下7個jar:
              struts2-core-2.1.6.jar、
              xwork-2.1.2.jar、
              freemarker-2.3.13.jar、
              ognl-2.6.11.jar、
              commons-logging-1.0.4.jar、
              commons-fileupload-1.2.1.jar、
              commons-io-1.3.2.jar

              還有"葉現一"(http://blog.csdn.net/yexianyi/)提供的辦法:將struts-2.1.6-all.zip中apps文件夾中struts2-blank-2.1.6.war文件解壓。進入struts2-blank-2.1.6"WEB-INF"lib,只將該文件夾下的9個jar包導入到項目工程中即可,其余的包如果沒有用到切不可輕易導入

          [參考資料]:
          [1] 嚴重 exception starting filter struts2 unable to load configuration : http://blog.csdn.net/cocohufei/archive/2009/05/13/4176058.aspx
          [2] struts2.1.6簡單的實例加載struts-default.xml的問題 : http://topic.csdn.net/u/20090212/14/4648539f-e6c1-4a1b-94b9-944712affa96.html
          [3] Struts2.x異常- Unable to load configuration..../WEB-INF/lib/struts2-convention-plugin-2.1.6.jar!/struts-plugin.xml : http://blog.csdn.net/yexianyi/archive/2009/02/18/3905836.aspx
          [4] struts 2.1.6 "Unable to load configuration"異常 : http://blog.csdn.net/thirdprince/archive/2009/04/06/4052027.aspx

          posted on 2009-07-07 23:16 天堂露珠 閱讀(2110) 評論(1)  編輯  收藏 所屬分類: ErrorStruts

          FeedBack:
          # re: [轉]Struts2.1.6 - Unable to load configuration 2009-07-08 00:19 路過
          非常感謝!!!  回復  更多評論
            
          主站蜘蛛池模板: 云梦县| 辉县市| 普格县| 井研县| 泰兴市| 洛扎县| 象州县| 邻水| 鹤壁市| 梧州市| 衡南县| 南溪县| 南平市| 堆龙德庆县| 泾川县| 肥西县| 灵台县| 奉化市| 镇坪县| 东兰县| 涿鹿县| 秦安县| 广灵县| 镇平县| 崇州市| 邢台市| 土默特右旗| 瓦房店市| 汉寿县| 千阳县| 阿克| 吴旗县| 北川| 西乡县| 富源县| 八宿县| 项城市| 灯塔市| 石屏县| 罗定市| 泉州市|