2017-09-29 14 views
0

Websphere Liberty 16.0.0.4でJSF 2.2アプリケーションを実行しています。Websphere Liberty ClassNotFoundException:org.apache.myfaces.renderkit.MyfacesResponseStateManager

JSFのMyfaces 2.2実装を使用し、com.ibm.ws.jsf.2.2_1.0.15.jarにバンドルされています。私はorg.apache.myfaces.renderkit.MyfacesResponseStateManagerのClassNotFoundExceptionを取得しています。

同じJSFページはWAS 9 Classicでも正常に動作し、Myfaces 2.2も使用しています。

どのようなヘルプも大歓迎です。以下のスタックトレースをご覧ください。伝統のWebSphereプロファイル(クラシック)は、それらの内部クラスへのアクセスを可能にする一方

おかげで、サンジェイ

[9/28/17 14:53:57:669 EDT] 0000002a id= org.apache.myfaces.shared.util.ClassUtils      
E null java.lang.reflect.InvocationTargetException 
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:88) 
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:57) 
      at java.lang.reflect.Constructor.newInstance(Constructor.java:437) 
      at org.apache.myfaces.shared.util.ClassUtils.buildApplicationObject(ClassUtils.java:670) 
      at org.apache.myfaces.shared.util.ClassUtils.buildApplicationObject(ClassUtils.java:542) 
      at org.apache.myfaces.config.FacesConfigurator.configureRenderKits(FacesConfigurator.java:1317) 
      at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:607) 
      at org.apache.myfaces.webapp.AbstractFacesInitializer.buildConfiguration(AbstractFacesInitializer.java:421) 
      at org.apache.myfaces.webapp.Jsp21FacesInitializer.initContainerIntegration(Jsp21FacesInitializer.java:73) 
      at org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:177) 
      at org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:119) 
      at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:2420) 
      at com.ibm.ws.webcontainer31.osgi.webapp.WebApp31.notifyServletContextCreated(WebApp31.java:505) 
      at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:1064) 
      at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:6562) 
      at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApp(DynamicVirtualHost.java:468) 
      at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApplication(DynamicVirtualHost.java:463) 
      at com.ibm.ws.webcontainer.osgi.WebContainer.startWebApplication(WebContainer.java:1004) 
      at com.ibm.ws.webcontainer.osgi.WebContainer.startModule(WebContainer.java:825) 
      at com.ibm.ws.app.manager.module.internal.ModuleHandlerBase.deployModule(ModuleHandlerBase.java:100) 
      at com.ibm.ws.app.manager.module.internal.DeployedModuleInfoImpl.installModule(DeployedModuleInfoImpl.java:50) 
      at com.ibm.ws.app.manager.module.internal.DeployedAppInfoBase.deployModules(DeployedAppInfoBase.java:420) 
      at com.ibm.ws.app.manager.module.internal.DeployedAppInfoBase.deployApp(DeployedAppInfoBase.java:406) 
      at com.ibm.ws.app.manager.ear.internal.EARApplicationHandlerImpl.install(EARApplicationHandlerImpl.java:84) 
      at com.ibm.ws.app.manager.internal.statemachine.StartAction.execute(StartAction.java:141) 
      at com.ibm.ws.app.manager.internal.statemachine.ApplicationStateMachineImpl.enterState(ApplicationStateMachineImpl.java:1191) 
      at com.ibm.ws.app.manager.internal.statemachine.ApplicationStateMachineImpl.run(ApplicationStateMachineImpl.java:804) 
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153) 
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 
      at java.lang.Thread.run(Thread.java:785) 
Caused by: java.lang.IllegalStateException: Could not initialize MyFacesFlowResponseStateManager 
      at org.springframework.faces.webflow.FlowRenderKit.initResponseStateManager(FlowRenderKit.java:58) 
      at org.springframework.faces.webflow.FlowRenderKit.<init>(FlowRenderKit.java:43) 
      ... 31 more 
Caused by: java.lang.NoClassDefFoundError: org.apache.myfaces.renderkit.MyfacesResponseStateManager 
      at java.lang.ClassLoader.defineClassImpl(Native Method) 
      at java.lang.ClassLoader.defineClass(ClassLoader.java:346) 
      at com.ibm.ws.classloading.internal.AppClassLoader.definePackageAndClass(AppClassLoader.java:335) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppClassLoader.java:310) 
      at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:846) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:825) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findOrDelegateLoadClass(AppClassLoader.java:477) 
      at com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppClassLoader.java:449) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:805) 
      at org.springframework.util.ClassUtils.forName(ClassUtils.java:250) 
      at org.springframework.faces.webflow.FlowRenderKit.initResponseStateManager(FlowRenderKit.java:53) 
      ... 32 more 
Caused by: java.lang.ClassNotFoundException: org.apache.myfaces.renderkit.MyfacesResponseStateManager 
      at com.ibm.ws.classloading.internal.AppClassLoader.findClassCommonLibraryClassLoaders(AppClassLoader.java:499) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppClassLoader.java:294) 
      at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:846) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:825) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findOrDelegateLoadClass(AppClassLoader.java:477) 
      at com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppClassLoader.java:449) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:805) 
      ... 43 more 

[9/28/17 14:53:57:676 EDT] 0000002a id=   org.apache.myfaces.webapp.AbstractFacesInitializer   E An error occured while initializing MyFaces: java.lang.reflect.InvocationTargetException 
javax.faces.FacesException: java.lang.reflect.InvocationTargetException 
      at org.apache.myfaces.shared.util.ClassUtils.buildApplicationObject(ClassUtils.java:697) 
      at org.apache.myfaces.shared.util.ClassUtils.buildApplicationObject(ClassUtils.java:542) 
      at org.apache.myfaces.config.FacesConfigurator.configureRenderKits(FacesConfigurator.java:1317) 
      at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:607) 
      at org.apache.myfaces.webapp.AbstractFacesInitializer.buildConfiguration(AbstractFacesInitializer.java:421) 
      at org.apache.myfaces.webapp.Jsp21FacesInitializer.initContainerIntegration(Jsp21FacesInitializer.java:73) 
      at org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:177) 
      at org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:119) 
      at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:2420) 
      at com.ibm.ws.webcontainer31.osgi.webapp.WebApp31.notifyServletContextCreated(WebApp31.java:505) 
      at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:1064) 
      at com.ibm.ws.webcontainer.webapp.WebApp.initialize(WebApp.java:6562) 
      at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApp(DynamicVirtualHost.java:468) 
      at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost.startWebApplication(DynamicVirtualHost.java:463) 
      at com.ibm.ws.webcontainer.osgi.WebContainer.startWebApplication(WebContainer.java:1004) 
      at com.ibm.ws.webcontainer.osgi.WebContainer.startModule(WebContainer.java:825) 
      at com.ibm.ws.app.manager.module.internal.ModuleHandlerBase.deployModule(ModuleHandlerBase.java:100) 
      at com.ibm.ws.app.manager.module.internal.DeployedModuleInfoImpl.installModule(DeployedModuleInfoImpl.java:50) 
      at com.ibm.ws.app.manager.module.internal.DeployedAppInfoBase.deployModules(DeployedAppInfoBase.java:420) 
      at com.ibm.ws.app.manager.module.internal.DeployedAppInfoBase.deployApp(DeployedAppInfoBase.java:406) 
      at com.ibm.ws.app.manager.ear.internal.EARApplicationHandlerImpl.install(EARApplicationHandlerImpl.java:84) 
      at com.ibm.ws.app.manager.internal.statemachine.StartAction.execute(StartAction.java:141) 
      at com.ibm.ws.app.manager.internal.statemachine.ApplicationStateMachineImpl.enterState(ApplicationStateMachineImpl.java:1191) 
      at com.ibm.ws.app.manager.internal.statemachine.ApplicationStateMachineImpl.run(ApplicationStateMachineImpl.java:804) 
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153) 
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 
      at java.lang.Thread.run(Thread.java:785) 
Caused by: java.lang.reflect.InvocationTargetException 
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:88) 
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:57) 
      at java.lang.reflect.Constructor.newInstance(Constructor.java:437) 
      at org.apache.myfaces.shared.util.ClassUtils.buildApplicationObject(ClassUtils.java:670) 
      ... 26 more 
Caused by: java.lang.IllegalStateException: Could not initialize MyFacesFlowResponseStateManager 
      at org.springframework.faces.webflow.FlowRenderKit.initResponseStateManager(FlowRenderKit.java:58) 
      at org.springframework.faces.webflow.FlowRenderKit.<init>(FlowRenderKit.java:43) 
      ... 31 more 
Caused by: java.lang.NoClassDefFoundError: org.apache.myfaces.renderkit.MyfacesResponseStateManager 
      at java.lang.ClassLoader.defineClassImpl(Native Method) 
      at java.lang.ClassLoader.defineClass(ClassLoader.java:346) 
      at com.ibm.ws.classloading.internal.AppClassLoader.definePackageAndClass(AppClassLoader.java:335) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppClassLoader.java:310) 
      at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:846) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:825) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findOrDelegateLoadClass(AppClassLoader.java:477) 
      at com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppClassLoader.java:449) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:805) 
      at org.springframework.util.ClassUtils.forName(ClassUtils.java:250) 
      at org.springframework.faces.webflow.FlowRenderKit.initResponseStateManager(FlowRenderKit.java:53) 
      ... 32 more 
Caused by: java.lang.ClassNotFoundException: org.apache.myfaces.renderkit.MyfacesResponseStateManager 
      at com.ibm.ws.classloading.internal.AppClassLoader.findClassCommonLibraryClassLoaders(AppClassLoader.java:499) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findClass(AppClassLoader.java:294) 
      at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:846) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:825) 
      at com.ibm.ws.classloading.internal.AppClassLoader.findOrDelegateLoadClass(AppClassLoader.java:477) 
      at com.ibm.ws.classloading.internal.AppClassLoader.loadClass(AppClassLoader.java:449) 
      at java.lang.ClassLoader.loadClass(ClassLoader.java:805) 
      ... 43 more 

答えて

0

JSF-2.2リバティ機能は、MyFacesの実装クラスを公開しません。あなたのシナリオでは、Springクラスのorg.springframework.faces.webflow.FlowRenderKitが内部クラスorg.apache.myfaces.renderkit.MyfacesResponseStateManagerClassUtils.forName経由でロードしようとしています。これはLibertyでは機能しません。一般的には良い方法ではありません。

アプリケーションとCDIの統合が必要ない場合は、Liberty jsf-2.2機能を使用する代わりにMyFacesを直接バンドルすると、このシナリオが機能するはずです。

Spring's issue tracker

関連答えに問題を提起する価値があるかもしれません:JIRAトラッカーWebflowの春に上げMyFaces and WebSphere Liberty Profile (ClassNotFoundException)

+0

問題https://jira.spring.io/browse/SWF-1712 – Sanjay

+0

が発生しSpring Issue Trackerでの問題。過去1週間は動きはありません。私はIBMとの切符も開けた。彼らはかなりの援助を拒否しました。その春のバグですが、今はLibertyのMyfacesの代わりにMojarraの実装に切り替えることで動作させることができました。 – Sanjay

+0

私は、Liberty JSF2.2機能のMyfacesクラスを公開するために、この記事で提案したものを使用しました。このハックはうまくいく.. https://github.com/primefaces/primefaces/issues/680 – Sanjay

関連する問題