部署到 WebSphere Liberty 8.5.5.6 时解析 OmniFaces 2.1 Taglib 时出错
Error parsing OmniFaces 2.1 Taglib when deploying to WebSphere Liberty 8.5.5.6
我在 WebSphere Liberty 上针对 Omnifaces 标记库的项目启动期间看到 IO 异常。我在谷歌上进行了广泛的搜索,但找不到任何人发生这种情况。这个错误不会发生在我本地 运行 相同版本的 WAS 中。这是堆栈跟踪,有人对此有任何了解吗?
[10/9/15 13:34:23:882 PDT] 000000fb TagLibraryCon E Error Loading Library: wsjar:file:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/NC-SBWSNode01Cell/eNC3ExtWeb_EAR_V1.8.ear/eNC3ExtWeb_WAR.war/WEB-INF/lib/omnifaces-2.1.jar!/META-INF/omnifaces-ui.taglib.xml
java.io.IOException: Error parsing [wsjar:file:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/NC-SBWSNode01Cell/eNC3ExtWeb_EAR_V1.8.ear/eNC3ExtWeb_WAR.war/WEB-INF/lib/omnifaces-2.1.jar!/META-INF/omnifaces-ui.taglib.xml]:
at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:637)
at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.loadImplicit(TagLibraryConfig.java:668)
at org.apache.myfaces.view.facelets.compiler.Compiler.initialize(Compiler.java:93)
at org.apache.myfaces.view.facelets.compiler.Compiler.compileViewMetadata(Compiler.java:125)
at org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory._createViewMetadataFacelet(DefaultFaceletFactory.java:311)
at org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.getViewMetadataFacelet(DefaultFaceletFactory.java:394)
at org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.getViewMetadataFacelet(DefaultFaceletFactory.java:376)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage._getViewMetadataFacelet(FaceletViewDeclarationLanguage.java:1984)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.access[=10=]0(FaceletViewDeclarationLanguage.java:132)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage$FaceletViewMetadata.createMetadataView(FaceletViewDeclarationLanguage.java:2093)
at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:161)
at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:172)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:119)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1232)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:781)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:480)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:79)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1385)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:194)
at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:672)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
at gov.nc.dor.app.ext.security.AuthenticationFilter.doFilter(AuthenticationFilter.java:59)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3926)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1007)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881)
编辑:
如果不是 8.5.5.x 那为什么服务器启动时会显示这个?
************ Start Display Current Environment ************
WebSphere [IBMJAVA7 7.0.9.10 cf071533.01]Platform 8.5.5.7 [ND 8.5.5.7 cf071533.01] running with process name NC-SBWSNode01Cell\NC-SBWSNode01\server1 and process id 4740
Host Operating System is Windows Server 2012 R2, version 6.3
Java version = 1.7.0, Java Runtime Version = pwa6470sr9fp10-20150708_01 (SR9 FP10), Java Compiler = j9jit26, Java VM name = IBM J9 VM
was.install.root = C:\Program Files (x86)\IBM\WebSphere\AppServer
user.install.root = C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01
Java Home = C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre
ws.ext.dirs = C:\Program Files (x86)\IBM\WebSphere\AppServer/java_1.7_64/lib;C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01/classes;C:\Program Files (x86)\IBM\WebSphere\AppServer/classes;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib;C:\Program Files (x86)\IBM\WebSphere\AppServer/installedChannels;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/ext;C:\Program Files (x86)\IBM\WebSphere\AppServer/web/help;C:\Program Files (x86)\IBM\WebSphere\AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01/properties;C:\Program Files (x86)\IBM\WebSphere\AppServer/properties;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/startup.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/bootstrap.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/jsf-nls.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/lmproxy.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/urlprotocols.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/deploytool/itp/batchboot.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/deploytool/itp/batch2.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/java_1.7_64/lib/tools.jar
Java Library path = C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/native/win/x86_64/;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre\bin\compressedrefs;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre\bin;C:\Windows\system32;C:\Windows;C:\Program Files (x86)\IBM\WebSphere\AppServer\lib\native\win\x86_64;C:\Program Files (x86)\IBM\WebSphere\AppServer\bin;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\bin;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;.;
Orb Version = IBM Java ORB build orb70-20150520.00
************* End Display Current Environment *************
java.io.IOException: Error parsing [.../omnifaces-ui.taglib.xml]:
at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:637)
此解析错误可识别为 MyFaces issue 3537,已在 MyFaces 2.0.14 和 2.1.8 中修复。这表明您实际上是在部署 WebSphere 版本,而 MyFaces 版本较旧,而不是 OmniFaces 2.x 要求的兼容 JSF 2.2 的版本。堆栈跟踪还确认它不是 MyFaces 2.2。
要么将服务器升级到 JSF 2.2 兼容服务器,要么将 OmniFaces 降级到 1.x。
我在 WebSphere Liberty 上针对 Omnifaces 标记库的项目启动期间看到 IO 异常。我在谷歌上进行了广泛的搜索,但找不到任何人发生这种情况。这个错误不会发生在我本地 运行 相同版本的 WAS 中。这是堆栈跟踪,有人对此有任何了解吗?
[10/9/15 13:34:23:882 PDT] 000000fb TagLibraryCon E Error Loading Library: wsjar:file:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/NC-SBWSNode01Cell/eNC3ExtWeb_EAR_V1.8.ear/eNC3ExtWeb_WAR.war/WEB-INF/lib/omnifaces-2.1.jar!/META-INF/omnifaces-ui.taglib.xml
java.io.IOException: Error parsing [wsjar:file:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/NC-SBWSNode01Cell/eNC3ExtWeb_EAR_V1.8.ear/eNC3ExtWeb_WAR.war/WEB-INF/lib/omnifaces-2.1.jar!/META-INF/omnifaces-ui.taglib.xml]:
at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:637)
at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.loadImplicit(TagLibraryConfig.java:668)
at org.apache.myfaces.view.facelets.compiler.Compiler.initialize(Compiler.java:93)
at org.apache.myfaces.view.facelets.compiler.Compiler.compileViewMetadata(Compiler.java:125)
at org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory._createViewMetadataFacelet(DefaultFaceletFactory.java:311)
at org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.getViewMetadataFacelet(DefaultFaceletFactory.java:394)
at org.apache.myfaces.view.facelets.impl.DefaultFaceletFactory.getViewMetadataFacelet(DefaultFaceletFactory.java:376)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage._getViewMetadataFacelet(FaceletViewDeclarationLanguage.java:1984)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.access[=10=]0(FaceletViewDeclarationLanguage.java:132)
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage$FaceletViewMetadata.createMetadataView(FaceletViewDeclarationLanguage.java:2093)
at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:161)
at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:172)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:119)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1232)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:781)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:480)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:79)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1385)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:194)
at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:672)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
at gov.nc.dor.app.ext.security.AuthenticationFilter.doFilter(AuthenticationFilter.java:59)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3926)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1007)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
at com.ibm.io.async.ResultHandler.run(ResultHandler.java:905)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881)
编辑:
如果不是 8.5.5.x 那为什么服务器启动时会显示这个?
************ Start Display Current Environment ************
WebSphere [IBMJAVA7 7.0.9.10 cf071533.01]Platform 8.5.5.7 [ND 8.5.5.7 cf071533.01] running with process name NC-SBWSNode01Cell\NC-SBWSNode01\server1 and process id 4740
Host Operating System is Windows Server 2012 R2, version 6.3
Java version = 1.7.0, Java Runtime Version = pwa6470sr9fp10-20150708_01 (SR9 FP10), Java Compiler = j9jit26, Java VM name = IBM J9 VM
was.install.root = C:\Program Files (x86)\IBM\WebSphere\AppServer
user.install.root = C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01
Java Home = C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre
ws.ext.dirs = C:\Program Files (x86)\IBM\WebSphere\AppServer/java_1.7_64/lib;C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01/classes;C:\Program Files (x86)\IBM\WebSphere\AppServer/classes;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib;C:\Program Files (x86)\IBM\WebSphere\AppServer/installedChannels;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/ext;C:\Program Files (x86)\IBM\WebSphere\AppServer/web/help;C:\Program Files (x86)\IBM\WebSphere\AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime
Classpath = C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\AppSrv01/properties;C:\Program Files (x86)\IBM\WebSphere\AppServer/properties;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/startup.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/bootstrap.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/jsf-nls.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/lmproxy.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/urlprotocols.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/deploytool/itp/batchboot.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/deploytool/itp/batch2.jar;C:\Program Files (x86)\IBM\WebSphere\AppServer/java_1.7_64/lib/tools.jar
Java Library path = C:\Program Files (x86)\IBM\WebSphere\AppServer/lib/native/win/x86_64/;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre\bin\compressedrefs;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre\bin;C:\Windows\system32;C:\Windows;C:\Program Files (x86)\IBM\WebSphere\AppServer\lib\native\win\x86_64;C:\Program Files (x86)\IBM\WebSphere\AppServer\bin;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\bin;C:\Program Files (x86)\IBM\WebSphere\AppServer\java_1.7_64\jre\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;.;
Orb Version = IBM Java ORB build orb70-20150520.00
************* End Display Current Environment *************
java.io.IOException: Error parsing [.../omnifaces-ui.taglib.xml]: at org.apache.myfaces.view.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java:637)
此解析错误可识别为 MyFaces issue 3537,已在 MyFaces 2.0.14 和 2.1.8 中修复。这表明您实际上是在部署 WebSphere 版本,而 MyFaces 版本较旧,而不是 OmniFaces 2.x 要求的兼容 JSF 2.2 的版本。堆栈跟踪还确认它不是 MyFaces 2.2。
要么将服务器升级到 JSF 2.2 兼容服务器,要么将 OmniFaces 降级到 1.x。