posts - 40,  comments - 187,  trackbacks - 0
          場景:構建Struts2.0時發生的錯誤。

          環境:sun jdk1.5.0_01 + tomcat 5.0.28

          完整的Exception:
          Exception starting filter struts2
          javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
          ?at javax.xml.transform.TransformerFactory.newInstance(Unknown Source)
          ?at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<clinit>(DomHelper.java:167)
          ?at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:115)
          ?at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:786)
          ?at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:132)
          ?at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:100)
          ?at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:130)
          ?at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
          ?at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:398)
          ?at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:455)
          ?at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201)
          ?at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:225)
          ?at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:308)
          ?at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:79)
          ?at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3698)
          ?at org.apache.catalina.core.StandardContext.start(StandardContext.java:4349)
          ?at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
          ?at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
          ?at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
          ?at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
          ?at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
          ?at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
          ?at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
          ?at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
          ?at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
          ?at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
          ?at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
          ?at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
          ?at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
          ?at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
          ?at org.apache.catalina.core.StandardService.start(StandardService.java:480)
          ?at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
          ?at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
          ?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:585)
          ?at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
          ?at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
          ?
          錯誤原因:
          認為是由于jdk1.5 與 tomcat5.0之間的關于?TransformerFactoryImpl 類的沖突造成的。
          tomcat-5.0.28\common\endorsed下有兩個jar包:xercesImpl.jar和xml-apis.jar,其中的類 javax.xml.transform.TransformerFactory 與jdk1.5中的類org.apache.xalan.processor.TransformerFactoryImpl其實是同一個類。
          in tomcat java is called with the following argument:
          -Djava.endorsed.dirs="X:\my_app\Portal\tomcat\common\endorsed"
          In this directory you find two jar files: xercesImpl.jar and xml-apis.jar needed by tomcat and that must be loaded before all xmsl stuff present in the jdk (1.4 naming problem). And in the file xml-apis.jar the TransformerFactoryImpl is set to "org.apache.xalan.processor.TransformerFactoryImpl".

          解決辦法:
          1. 將xml-apis.jar移出endorsed文件夾。
          2. 用xalan系列jar包替換原來的xercesImpl.jar和xml-apis.jar。
          ?? xalan系列jar包:serializer.jar、xalan.jar、xercesImpl.jar和xml-apis.jar。
          3. For other application, just check this file or dom3-xml-apis.jar in your class path.


          ????????????????????????????????????????????????????????????????????????????? THE END
          posted on 2007-03-02 09:49 小立飛刀 閱讀(3858) 評論(6)  編輯  收藏 所屬分類: JavaEE Servers

          FeedBack:
          # re: TransformerFactoryImpl not found exception
          2007-03-02 14:39 | 山風小子
          What's the version of your Struts2?
          Thanks:)  回復  更多評論
            
          # re: TransformerFactoryImpl not found exception
          2007-03-02 15:47 | 小雪飛刀
          @山風小子

          mine is struts-2.0.6
            回復  更多評論
            
          # re: TransformerFactoryImpl not found exception
          2007-05-13 17:04 | 張先生
          哪兒找dom3-xml-apis.jar ???  回復  更多評論
            
          # re: TransformerFactoryImpl not found exception
          2007-08-28 13:57 |
          極為討厭說東西不說明白  回復  更多評論
            
          # re: TransformerFactoryImpl not found exception
          2007-08-28 16:03 | 小立飛刀
          @纟

          您哪兒不明白?直接寫出來啊
            回復  更多評論
            
          # re: TransformerFactoryImpl not found exception
          2007-09-24 13:35 | leo yan
          說的不錯了..人家給你提供了解決方案,如果不對的話,肯定是你自己的問題  回復  更多評論
            
          <2007年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          生存或毀滅,這是個必答之問題:是否應默默的忍受坎苛命運之無情打擊,還是應與深如大海之無涯苦難奮然為敵,并將其克服。此二抉擇,究竟是哪個較崇高?

          常用鏈接

          留言簿(12)

          隨筆分類(43)

          相冊

          收藏夾(7)

          朋友的博客

          電子資料

          搜索

          •  

          積分與排名

          • 積分 - 302798
          • 排名 - 192

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 朝阳县| 西峡县| 泊头市| 伊春市| 讷河市| 永州市| 定结县| 南木林县| 江安县| 即墨市| 四平市| 文水县| 定结县| 柳江县| 杭锦后旗| 出国| 襄城县| 赤峰市| 合水县| 汶上县| 邮箱| 开封市| 郧西县| 南昌市| 太湖县| 平原县| 桃江县| 同心县| 锡林浩特市| 南召县| 台东市| 宁蒗| 历史| 西丰县| 绵竹市| 江陵县| 南丰县| 镇赉县| 长治县| 益阳市| 宁安市|