ClassNotFoundException:尝试将MyFaces 2.1.10与IBM WebSphere 7.0一起使用时的ClassUtils

编程入门 行业动态 更新时间:2024-10-27 20:29:49
本文介绍了ClassNotFoundException:尝试将MyFaces 2.1.10与IBM WebSphere 7.0一起使用时的ClassUtils的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

由于带有p:messages的 PrimeFaces 错误,我尝试将与 IBM WebSphere 7.0 一起使用的 MyFaces 版本从2.0.7升级.到2.1.10.

Because of PrimeFaces bug with p:messages I've tried to upgrade the MyFaces version used with IBM WebSphere 7.0 from 2.0.7 to 2.1.10.

不幸的是,我从myFaces页面下载的myfaces-impl jar不包含来自项目org/apache/myfaces/shared_impl/util/的许多实用程序类,这些实用程序类已经在项目中的2.0.7版本中.

Unfortunatelly, the myfaces-impl jar I've downloaded from myFaces page does not contain many utility classes from package org/apache/myfaces/shared_impl/util/ that were in the version 2.0.7 that was already in the project.

整个堆栈跟踪为:

java.lang.NoClassDefFoundError: org/apache/myfaces/shared_impl/util/ClassUtils at com.ibm.ws.jsf.config.annotation.WebSphere20LifecycleProviderFactory.getLifecycleProvider(WebSphere20LifecycleProviderFactory.java:34) at org.apache.myfaces.config.FacesConfigurator.configureManagedBeanDestroyer(FacesConfigurator.java:1048) at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:431) at org.apache.myfaces.webapp.AbstractFacesInitializer.buildConfiguration(AbstractFacesInitializer.java:370) at org.apache.myfaces.webapp.Jsp21FacesInitializer.initContainerIntegration(Jsp21FacesInitializer.java:73) at org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:143) at org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:119) at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1708) at com.ibm.ws.webcontainer.webapp.WebAppmonInitializationFinish(WebApp.java:381) at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:299) at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:100) at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166) at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:732) at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:617) at com.ibm.ws.webcontainerponent.WebContainerImpl.install(WebContainerImpl.java:376) at com.ibm.ws.webcontainerponent.WebContainerImpl.start(WebContainerImpl.java:668) at com.ibm.ws.runtimeponent.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1127) at com.ibm.ws.runtimeponent.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1319) at com.ibm.ws.runtimeponent.DeployedModuleImpl.start(DeployedModuleImpl.java:610) at com.ibm.ws.runtimeponent.DeployedApplicationImpl.start(DeployedApplicationImpl.java:944) at com.ibm.ws.runtimeponent.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:740) at com.ibm.ws.runtimeponent.ApplicationMgrImpl$1.run(ApplicationMgrImpl.java:1272) at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5343) at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5431) at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:255) at com.ibm.ws.runtimeponent.ApplicationMgrImpl.startApplicationDynamically(ApplicationMgrImpl.java:1277) at com.ibm.ws.runtimeponent.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2048) at com.ibm.ws.runtimeponent.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:385) at com.ibm.ws.runtimeponent.CompositionUnitImpl.start(CompositionUnitImpl.java:123) at com.ibm.ws.runtimeponent.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:328) at com.ibm.ws.runtimeponent.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:599) at com.ibm.ws.runtimeponent.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:561) at com.ibm.ws.runtimeponent.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1184) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:49) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:256) at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1085) at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:966) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:848) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:773) at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1331) at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118) at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:1224) at com.ibm.ws.management.application.sync.StartDeploymentTask.startDeployment(StartDeploymentTask.java:236) at com.ibm.ws.management.application.sync.StartDeploymentTask.fullAppUpdate(StartDeploymentTask.java:113) at com.ibm.ws.management.application.sync.StartDeploymentTask.performTask(StartDeploymentTask.java:101) at com.ibm.ws.management.application.sync.AppBinaryProcessor$ExpandApp.expand(AppBinaryProcessor.java:1682) at com.ibm.ws.management.application.sync.AppBinaryProcessor.postProcessSynchronousExt(AppBinaryProcessor.java:723) at com.ibm.ws.management.bla.sync.BLABinaryProcessor.postProcess(BLABinaryProcessor.java:575) at com.ibm.ws.management.bla.sync.BLABinaryProcessor.onChangeCompletion(BLABinaryProcessor.java:452) at com.ibm.ws.management.repository.FileRepository.postNotify(FileRepository.java:1915) at com.ibm.ws.management.repository.FileRepository.update(FileRepository.java:1424) at com.ibm.ws.management.repository.client.LocalConfigRepositoryClient.update(LocalConfigRepositoryClient.java:189) at com.ibm.ws.sm.workspace.impl.WorkSpaceMasterRepositoryAdapter.update(WorkSpaceMasterRepositoryAdapter.java:665) at com.ibm.ws.sm.workspace.impl.RepositoryContextImpl.update(RepositoryContextImpl.java:1954) at com.ibm.ws.sm.workspace.impl.RepositoryContextImpl.synch(RepositoryContextImpl.java:1902) at com.ibm.ws.sm.workspace.impl.WorkSpaceImpl.synch(WorkSpaceImpl.java:511) at com.ibm.ws.management.configservice.ConfigServiceImpl.save(ConfigServiceImpl.java:702) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:49) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:256) at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1085) at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:966) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:848) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:773) at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1331) at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118) at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:1224) at com.ibm.ws.management.connector.AdminServiceDelegator.invoke(AdminServiceDelegator.java:181) at com.ibm.ws.management.connector.ipc.CallRouter.route(CallRouter.java:242) at com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink.doWork(IPCConnectorInboundLink.java:353) at com.ibm.ws.management.connector.ipc.IPCConnectorInboundLink$IPCConnectorReadCallbackplete(IPCConnectorInboundLink.java:595) at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallbackplete(SSLReadServiceContext.java:1784) at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) 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.AsyncFuturepleted(AsyncFuture.java:138) at com.ibm.io.async.ResultHandlerplete(ResultHandler.java:204) at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)

在服务器上配置的共享库中使用的库:

The libraries used in shared library configured on server:

C:\WebsphereSharedLibs\MyFaces_2.1.10\de.datev.myfaces_2.1.10.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\myfaces-api-2.1.10.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\myfaces-impl-2.1.10.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\commons-logging-1.1.1.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\commons-digester-1.8.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\commons-collections-3.2.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\commons-codec-1.3.jar C:\WebsphereSharedLibs\MyFaces_2.1.10\commons-beanutils-1.8.3.jar C:\IBM\SDP\runtimes\base_v7\optionalLibraries\IBM\JSFProviders\WebSphere-MyFaces20-annotation-provider.jar

那么,问题出在哪里?我自己还没有下载2.0.7版本,所以也许它必须是特别丰富的版本才能与WebSphere一起使用?有没有办法在WebSphere上使用MyFaces 2.1.10,还是仅需要IBM团队准备的版本?

So, where's the problem? I haven't downloaded the version 2.0.7 myself, so maybe it must be specially enriched version to work with WebSphere? Is there a way to use MyFaces 2.1.10 with WebSphere, or can I need only the version prepared by IBM team?

推荐答案

请参阅IBM的此APAR: www-01.ibm/support/docview.wss ?uid = swg1PM61211 :

See this APAR from IBM: www-01.ibm/support/docview.wss?uid=swg1PM61211:

WebSphere Application Server向其中添加了一个定制注释提供程序 为MyFaces 2.0.8+提供内置的喷射引擎支持.这 提供程序代码打包在一个名为jar的新jar文件中 WebSphere-MyFaces208-annotation-provider.jar,位于 /optionalLibraries/IBM/JSFProviders/2.0.8目录.

WebSphere Application Server added a custom annotation provider to provide built in injection engine support for MyFaces 2.0.8+. The provider code is packaged in a new jar file called WebSphere-MyFaces208-annotation-provider.jar, which is located in the /optionalLibraries/IBM/JSFProviders/2.0.8 directory.

此APAR的修补程序当前被定位为包含在修订包中 7.0.0.25.

The fix for this APAR is currently targeted for inclusion in fix pack 7.0.0.25.

因此您需要至少升级到7.0.0.25,才能在MyFaces上使用更新的2.0.x版本.

So you need to upgrade to at least 7.0.0.25, and you'll be able to use newer 2.0.x versions on MyFaces

更多推荐

ClassNotFoundException:尝试将MyFaces 2.1.10与IBM WebSphere 7.0一起使用时的ClassUtils

本文发布于:2023-11-24 11:07:58,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1624958.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:ClassNotFoundException   MyFaces   ClassUtils   IBM   WebSphere

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!