2

JSF2.0プロジェクトでSaxon-B9を使用します。しかし、Saxon&Saxon-domに依存関係を追加した後、起動時に例外が発生し始めました。

2010年9月25日18:05:45com.google.apphosting.utils.jetty.JettyLogger情報情報:com.google.apphosting.utils.jetty.JettyLogger経由でJettyLogger(null)にログを記録2010年9月25日6:05: 45 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml情報:/home/chardex/projects/metabus/trunk/clients/export/target/articats/export_exploded/WEB-INF/appengine-web.xml9月25日正常に処理されました、2010 6:05:45 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml情報:正常に処理された/home/chardex/projects/metabus/trunk/clients/export/target/articats/export_exploded/WEB-INF/web .xml2010年9月25日18:05:45com.google.apphosting.utils.jetty.JettyLogger情報情報:jetty-6.1.x2010年9月25日18:05:46com.sun.faces.config.ConfigureListener contextInitialized INFO:コンテキスト用にMojarra2.0.0(RC2 b22)を初期化しています''2010年9月25日18:05:48com.sun.faces.config.ConfigManager初期化情報:失敗した開始からのサニタイズされていないスタックトレース... > com.sun.faces.config.ConfigurationException:java.util.concurrent.ExecutionException:java.lang.NoSuchMethodError:net.sf.saxon.dom.NodeWrapper $ ChildEnumeration.isAtomizing()Z com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:670)at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:306)at com.sun.faces.config.ConfigureListener.contextInitialized (ConfigureListener.java:219)org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548)at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)atorg.mortbay。 jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 467)org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)atorg.mortbay。component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)at org.mortbay.jetty.Server.doStart(Server.java:224)at org .mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:185)at com.google.appengine.tools.development.AbstractContainerService.startup (AbstractContainerService.java:147)at com.google.appengine.tools.development.DevAppServerImpl.start(DevAppServerImpl.java:219)at com.google.appengine.tools.development.DevAppServerMain $ StartAction.apply(DevAppServerMain.java:164) )com.google.appengine.tools.util.Parser $ ParseResult.applyArgs(Parser.java:48)atcom.google.appengine.tools.development。DevAppServerMain。(DevAppServerMain.java:113)at com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMain.java:89)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:616)atcom.intellij.rt.execution.application。 AppMain.main(AppMain.java:115)原因:java.util.concurrent.ExecutionException:java.lang.NoSuchMethodError:net.sf.saxon.dom.NodeWrapper $ ChildEnumeration.isAtomizing()Zatjava.util.concurrent。 FutureTask $ Sync.innerGet(FutureTask.java:252)at java.util.concurrent.FutureTask.get(FutureTask.java:111)atcom.sun.faces.config。ConfigManager.getConfigDocuments(ConfigManager.java:668)... 25 more原因:java.lang.NoSuchMethodError:net.sf.saxon.dom.NodeWrapper $ ChildEnumeration.isAtomizing()Z at net.sf.saxon.dom.NodeWrapper $ ChildEnumeration。(NodeWrapper.java:1079)at net.sf.saxon.dom.NodeWrapper.iterateAxis(NodeWrapper.java:722)at net.sf.saxon.instruct.ApplyTemplates.defaultAction(ApplyTemplates.java:375)at net .sf.saxon.instruct.ApplyTemplates.applyTemplates(ApplyTemplates.java:333)at net.sf.saxon.Controller.transformDocument(Controller.java:1807)at net.sf.saxon.Controller.transform(Controller.java:1621 )com.sun.faces.config.ConfigManager $ ParseTask.getDocument(ConfigManager.java:906)at com.sun.faces.config.ConfigManager $ ParseTask.call(ConfigManager.java:831)atcom.sun.faces。構成。ConfigManager $ ParseTask.call(ConfigManager.java:787)at java.util.concurrent.FutureTask $ Sync.innerRun(FutureTask.java:334)at java.util.concurrent.FutureTask.run(FutureTask.java:166)at com .sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:656)... 25more2010年9月25日18:05:48com.google.apphosting.utils.jetty.JettyLoggerwarnwarn

しかし、私はまだライブラリを使用しておらず、JSFがライブラリの使用を開始する理由を理解していません。ファイルjavax.xml.transform.TransformerFactoryをsaxonjarから削除しようとしましたが、役に立ちませんでした。

4

1 に答える 1

2

NoSuchMethodErrorSaxonはすでにクラスパスに含まれていましたが、メッセージに記載されているメソッドがない古いバージョンをクラスパスに追加したようです。

Saxonは、クラスパスの標準ライブラリにすでに含まれている可能性があります。SaxonはJAXP実装の1つです。JSFは、JAXPを使用してfaces-config.xmlファイルを解析します。

この特定の問題を修正するには、クラスパスに手動で追加した古いバージョンのSaxonをクラスパスから削除するだけで機能するはずです。

于 2010-09-25T19:21:23.537 に答える