views:

45

answers:

1

Hi, I'm going to use Saxon-B 9 in my JSF 2.0 project. But after adding dependency to Saxon & Saxon-dom exceptions began to appear at startup:

Sep 25, 2010 6:05:45 PM com.google.apphosting.utils.jetty.JettyLogger info INFO: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger Sep 25, 2010 6:05:45 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml INFO: Successfully processed /home/chardex/projects/metabus/trunk/clients/export/target/articats/export_exploded/WEB-INF/appengine-web.xml Sep 25, 2010 6:05:45 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml INFO: Successfully processed /home/chardex/projects/metabus/trunk/clients/export/target/articats/export_exploded/WEB-INF/web.xml Sep 25, 2010 6:05:45 PM com.google.apphosting.utils.jetty.JettyLogger info INFO: jetty-6.1.x Sep 25, 2010 6:05:46 PM com.sun.faces.config.ConfigureListener contextInitialized INFO: Initializing Mojarra 2.0.0 (RC2 b22) for context '' Sep 25, 2010 6:05:48 PM com.sun.faces.config.ConfigManager initialize INFO: Unsanitized stacktrace from failed start... > com.sun.faces.config.ConfigurationException: java.util.concurrent.ExecutionException: java.lang.NoSuchMethodError: net.sf.saxon.dom.NodeWrapper$ChildEnumeration.isAtomizing()Z at 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) at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548) at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) at org.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) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) at org.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) at com.google.appengine.tools.util.Parser$ParseResult.applyArgs(Parser.java:48) at com.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) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115) Caused by: java.util.concurrent.ExecutionException: java.lang.NoSuchMethodError: net.sf.saxon.dom.NodeWrapper$ChildEnumeration.isAtomizing()Z at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252) at java.util.concurrent.FutureTask.get(FutureTask.java:111) at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:668) ... 25 more Caused by: 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) at com.sun.faces.config.ConfigManager$ParseTask.getDocument(ConfigManager.java:906) at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:831) at com.sun.faces.config.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) ... 25 more Sep 25, 2010 6:05:48 PM com.google.apphosting.utils.jetty.JettyLogger warnwarn

But I still do not use the library and do not understand why the JSF begins its use it. I tried to delete file javax.xml.transform.TransformerFactory from saxon jar, but it did't help.

+1  A: 

Saxon was already in the classpath, but you've apparently added an outdated version to the classpath which is lacking the method as mentioned in the NoSuchMethodError message.

Likely Saxon was already among the standard libraries in the classpath. Saxon is one of the JAXP implementations. JSF makes use of JAXP to parse among others the faces-config.xml file.

To fix this particular problem, just remove the outdated version of Saxon from the classpath which you've added manually to the classpath and it should work.

BalusC