运行 JSPX 时出现 GlassFish 4 错误的 Oracle ADF
Oracle ADF with GlassFish 4 error while running the JSPX
我已经关注 Oracle Enterprise Pack Eclipse ADF 但我使用的是 GlassFish 而不是 weblogic。
当试图执行 http://localhost:18080/HRWeb/faces/MainHR.jspx 时出现以下异常
2016-12-23T19:45:21.545+0530|Info: jndi:/server/HRWeb/WEB-INF/classes/view/DataBindings.cpx
2016-12-23T19:45:25.249+0530|Info: Added skin addition org.apache.myfaces.trinidad.skin.SkinAddition@1910271752 {styleSheetName: META-INF/adf/styles/fusion-base-theme-addition.css} to skin org.apache.myfaces.trinidadinternal.skin.SkinExtension@521539624 {id: fusion-base.desktop, version: , styleSheetName: META-INF/adf/styles/fusion-base-desktop.css, bundleName: oracle.adfinternal.view.faces.renderkit.rich.resource.RichBundle, extends: [simple.desktop]}
2016-12-23T19:45:25.250+0530|Info: Added skin addition org.apache.myfaces.trinidad.skin.SkinAddition@2037844104 {styleSheetName: META-INF/adf/styles/fusion-theme-addition.css} to skin org.apache.myfaces.trinidadinternal.skin.SkinExtension@2017400613 {id: fusion.desktop, version: , styleSheetName: META-INF/adf/styles/fusion-desktop.css, bundleName: oracle.adfinternal.view.faces.renderkit.rich.resource.RichBundle, extends: [fusion-base.desktop, simple.desktop]}
2016-12-23T19:45:25.394+0530|Warning: ADF_FACES-60098:Faces lifecycle receives unhandled exceptions in phase RENDER_RESPONSE 6
java.lang.NoSuchFieldError: CAP_ACTIVE_DATA_CHANNEL_SHARING
at oracle.adfinternal.view.faces.activedata.SessionDataUpdateManager.<init>(SessionDataUpdateManager.java:92)
at oracle.adfinternal.view.faces.activedata.RichDataUpdateManagerFactory._getSessionDataUpdateManager(RichDataUpdateManagerFactory.java:157)
at oracle.adfinternal.view.faces.activedata.RichDataUpdateManagerFactory.getDataUpdateManager(RichDataUpdateManagerFactory.java:91)
at oracle.adfinternal.view.faces.context.AdfFacesContextImpl.getDataUpdateManager(AdfFacesContextImpl.java:166)
at oracle.adf.view.rich.activedata.ActiveComponentContext.<init>(ActiveComponentContext.java:81)
at oracle.adf.view.rich.activedata.ActiveComponentContext.getActiveComponentContext(ActiveComponentContext.java:99)
at oracle.adfinternal.view.faces.context.RichRequestContextImpl.pushCurrentComponent(RichRequestContextImpl.java:32)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:1217)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
at oracle.adfinternal.view.faces.component.AdfViewRoot.encodeAll(AdfViewRoot.java:102)
at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:431)
at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:232)
at org.apache.myfaces.trinidad.view.ViewDeclarationLanguageWrapper.renderView(ViewDeclarationLanguageWrapper.java:101)
at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:338)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:170)
at oracle.adfinternal.view.faces.lifecycle.ResponseRenderManager.runRenderView(ResponseRenderManager.java:52)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:1264)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executeRenderResponse(LifecycleImpl.java:1107)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:348)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:258)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:105)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:502)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:502)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:327)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:229)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:207)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
at org.glassfish.grizzly.filterchain.ExecutorResolver.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access0(WorkerThreadIOStrategy.java:56)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
at java.lang.Thread.run(Thread.java:745)
我正在使用 Oracle 快捷版 11g 中的 HR 模式
可能是什么原因?
请查看官方神谕URLConfiguring and Using ADF with GlassFish Server
它说
Download the Oracle ADF Essentials file adf-essentials.zip to a temporary location. You will install the ADF Runtime library files into the GlassFish installation directory, as described in Section 3.10.3, "How to Configure GlassFish for OEPE."
Download the Oracle ADF Essentials Client files adf-essentials-client-ear.zip and adf-essentials-client-war.zip to a temporary location and then extract the files to flat-structured temporary directories, a separate directory for each download.
这意味着您必须下载三个文件
- adf-essentials.zip -- 需要安装在服务器
- adf-essentials-client-ear.zip -- 需要与 EAR 项目一起使用
- adf-essentials-client-war.zip -- 需要与 WAR 项目一起使用
您可能还需要下载 easybeans-persistence-eclipselink-2.4.x-1.0.1.jar 并将其放入放置 adf 要素的 glassfish 域 lib 文件夹中
如果您正确执行此过程,那么您的问题将会得到解决。
注意:服务器日志中可能会抛出许多异常,但您的应用程序将按预期工作,您的屏幕也将按照该教程中指定的方式呈现。
我已经关注 Oracle Enterprise Pack Eclipse ADF 但我使用的是 GlassFish 而不是 weblogic。
当试图执行 http://localhost:18080/HRWeb/faces/MainHR.jspx 时出现以下异常
2016-12-23T19:45:21.545+0530|Info: jndi:/server/HRWeb/WEB-INF/classes/view/DataBindings.cpx
2016-12-23T19:45:25.249+0530|Info: Added skin addition org.apache.myfaces.trinidad.skin.SkinAddition@1910271752 {styleSheetName: META-INF/adf/styles/fusion-base-theme-addition.css} to skin org.apache.myfaces.trinidadinternal.skin.SkinExtension@521539624 {id: fusion-base.desktop, version: , styleSheetName: META-INF/adf/styles/fusion-base-desktop.css, bundleName: oracle.adfinternal.view.faces.renderkit.rich.resource.RichBundle, extends: [simple.desktop]}
2016-12-23T19:45:25.250+0530|Info: Added skin addition org.apache.myfaces.trinidad.skin.SkinAddition@2037844104 {styleSheetName: META-INF/adf/styles/fusion-theme-addition.css} to skin org.apache.myfaces.trinidadinternal.skin.SkinExtension@2017400613 {id: fusion.desktop, version: , styleSheetName: META-INF/adf/styles/fusion-desktop.css, bundleName: oracle.adfinternal.view.faces.renderkit.rich.resource.RichBundle, extends: [fusion-base.desktop, simple.desktop]}
2016-12-23T19:45:25.394+0530|Warning: ADF_FACES-60098:Faces lifecycle receives unhandled exceptions in phase RENDER_RESPONSE 6
java.lang.NoSuchFieldError: CAP_ACTIVE_DATA_CHANNEL_SHARING
at oracle.adfinternal.view.faces.activedata.SessionDataUpdateManager.<init>(SessionDataUpdateManager.java:92)
at oracle.adfinternal.view.faces.activedata.RichDataUpdateManagerFactory._getSessionDataUpdateManager(RichDataUpdateManagerFactory.java:157)
at oracle.adfinternal.view.faces.activedata.RichDataUpdateManagerFactory.getDataUpdateManager(RichDataUpdateManagerFactory.java:91)
at oracle.adfinternal.view.faces.context.AdfFacesContextImpl.getDataUpdateManager(AdfFacesContextImpl.java:166)
at oracle.adf.view.rich.activedata.ActiveComponentContext.<init>(ActiveComponentContext.java:81)
at oracle.adf.view.rich.activedata.ActiveComponentContext.getActiveComponentContext(ActiveComponentContext.java:99)
at oracle.adfinternal.view.faces.context.RichRequestContextImpl.pushCurrentComponent(RichRequestContextImpl.java:32)
at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:1217)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
at oracle.adfinternal.view.faces.component.AdfViewRoot.encodeAll(AdfViewRoot.java:102)
at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:431)
at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:232)
at org.apache.myfaces.trinidad.view.ViewDeclarationLanguageWrapper.renderView(ViewDeclarationLanguageWrapper.java:101)
at org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl$ChangeApplyingVDLWrapper.renderView(ViewDeclarationLanguageFactoryImpl.java:338)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:170)
at oracle.adfinternal.view.faces.lifecycle.ResponseRenderManager.runRenderView(ResponseRenderManager.java:52)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:1264)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executeRenderResponse(LifecycleImpl.java:1107)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:348)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:258)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:105)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:502)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:502)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:327)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:229)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:207)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:169)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
at org.glassfish.grizzly.filterchain.ExecutorResolver.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access0(WorkerThreadIOStrategy.java:56)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
at java.lang.Thread.run(Thread.java:745)
我正在使用 Oracle 快捷版 11g 中的 HR 模式
可能是什么原因?
请查看官方神谕URLConfiguring and Using ADF with GlassFish Server
它说
Download the Oracle ADF Essentials file adf-essentials.zip to a temporary location. You will install the ADF Runtime library files into the GlassFish installation directory, as described in Section 3.10.3, "How to Configure GlassFish for OEPE."
Download the Oracle ADF Essentials Client files adf-essentials-client-ear.zip and adf-essentials-client-war.zip to a temporary location and then extract the files to flat-structured temporary directories, a separate directory for each download.
这意味着您必须下载三个文件
- adf-essentials.zip -- 需要安装在服务器
- adf-essentials-client-ear.zip -- 需要与 EAR 项目一起使用
- adf-essentials-client-war.zip -- 需要与 WAR 项目一起使用
您可能还需要下载 easybeans-persistence-eclipselink-2.4.x-1.0.1.jar 并将其放入放置 adf 要素的 glassfish 域 lib 文件夹中
如果您正确执行此过程,那么您的问题将会得到解决。
注意:服务器日志中可能会抛出许多异常,但您的应用程序将按预期工作,您的屏幕也将按照该教程中指定的方式呈现。