【发布时间】:2012-04-16 19:03:09
【问题描述】:
我正在使用运行在 tomcat 服务器上的 JSF 2.0 构建 Java Web 应用程序。我正在使用facelets1.1.10。我最近看到了primefaces 可以做什么,我对此印象非常深刻。所以我想将 primefaces 添加到我的网络项目中。
我从网站上下载了primefaces3.2.jar 并将其添加到我的项目 lib 文件夹(我保存所有 jar 文件的地方)。并将其添加到我的构建路径中。但是当测试它以查看 primefaces 是否有效时,我收到以下错误:
严重:加载库时出错: jar:file:/C:/tomcat/wtpwebapps/miloWeb/WEB-INF/lib/primefaces-3.2.jar!/META-INF/primefaces-p.taglib.xml java.io.IOException:解析错误 [jar:file:/C:/tomcat/wtpwebapps/miloWeb/WEB-INF/lib/primefaces-3.2.jar!/META-INF/primefaces-p.taglib.xml]: 在 com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:397) 在 com.sun.facelets.compiler.TagLibraryConfig.loadImplicit(TagLibraryConfig.java:418) 在 com.sun.facelets.compiler.Compiler.initialize(Compiler.java:86) 在 com.sun.facelets.compiler.Compiler.compile(Compiler.java:103) 在 com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192) 在 com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141) 在 com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93) 在 com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503) 在 com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553) 在 com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) 在 com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) 在 com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) 在 javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 在 org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:349) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:242) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:203) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108) 在 org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:558) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:379) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:242) 在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:259) 在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:237) 在 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:281) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(未知 来源)在 java.util.concurrent.ThreadPoolExecutor$Worker.run(未知 来源)在 java.lang.Thread.run(Unknown Source) 引起: org.xml.sax.SAXException:错误处理 [jar:file:/C:/tomcat/wtpwebapps/miloWeb/WEB-INF/lib/primefaces-3.2.jar!/META-INF/primefaces-p.taglib.xml@5,17] 在 com.sun.facelets.compiler.TagLibraryConfig$LibraryHandler.error(TagLibraryConfig.java:363) 在 com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(未知 来源)在 com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.rootElementSpecified(未知 来源)在 com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(未知 来源)在 com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDriver.scanRootElementHook(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(未知 来源)在 com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(未知 来源)在 com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(未知 来源)在 com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(未知 来源)在 com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(未知 来源)在 com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(未知 来源)在 com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(未知 源)在 javax.xml.parsers.SAXParser.parse(未知源)在 javax.xml.parsers.SAXParser.parse(Unknown Source) 在 com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:394) ... 31 更多
这是什么意思?为了保留 facelets 和添加 primefaces,我必须做什么?
【问题讨论】:
-
是的,它正在使用 facelets...从您的项目中删除 facelets1.1.10 并重试...看看这个详细的答案...stackoverflow.com/a/4532870/617373
标签: java jsf-2 primefaces facelets