java.lang.ClassNotFoundException: oracle.adf.view.rich.component.rich.RichPopup в ADF 12c

У нас есть основа для нашего приложения Huge ADF, разработанная jdeveloper 12.2.1.1.0. просто мы разделили наш бизнес на множество рабочих пространств следующим образом:

  • xxxxxFinance.ear: одно из наших рабочих пространств (имеет SharedUI.jar и SharedCode.jar в прикрепленных библиотеках проекта слоя представления)
  • Поместите Adf-richclient-api-11.jar в качестве прикрепленных библиотек как в SharedUI.jar, так и в SharedCode.jar.
  • убедитесь, что идентификаторы компонентов уникальны во всех шаблонах страниц jsf, чтобы избежать двусмысленности по сравнению с обычными страницами jsf в других наших проектах.

Способ развертывания: мы развертываем наши общие jar-файлы (SharedUI.jar и SharedCode.jar) в weblogic, а также исключаем их из xxxxxFinance.ear, снимая отметку с войны / фильтров в WEB-INF относительно войны слоев и ставим имена банок в файле weblogic-application.xml, на данный момент все в порядке и работает нормально.

проблема: мы получили java.lang.ClassNotFoundException: oracle.adf.view.rich.component.rich.RichPopup на каждой странице, и после расследования я обнаружил, что SharedUI В проекте есть всплывающее окно внутри корневого шаблона страницы jsf для обработки функциональности смены пароля, которая имеет привязку в классе templateMgr, который существует в sharedCode.jar, что разумно для действий с шаблонами обработки.

Мы пытались:

  1. Все вопросы решены. это произошло из-за того, что некоторые разработчики допустили ошибки в отношении присоединения классов путей и библиотек.
  2. Как вы используете компоненты из SharedUI.jar в xxxFinance.ear?

но тоже не сработало.

Наконец, когда мы хешировали назначение этого всплывающего окна в шаблоне. то все снова работает нормально !!.

Также мы расширяем класс ViewHandler до customViewHandler для управления нашей локалью и т. д. Я воспользовался другой проблемой, касающейся строки AdfFacesContext.getCurrentInstance (). IsPostback (). oracle / adf / view / rich / context / AdfFacesContext java.lang.NoClassDefFoundError: oracle / adf / view / rich / context / AdfFacesContext

Эти исключения отображаются только на этапе развертывания (когда мы отделяем нашу общую jar-память от наших основных рабочих ресурсов и развертываем их в weblogic и подготавливаем военные фильтры WEB-INF и weblogic-application.xml). Я имею в виду, что когда каждый проект имеет эти два общих jar-файла в качестве прикрепленных библиотек в режиме разработки, все работает нормально с разработчиком.

Если у нас возникло недоразумение. Мне интересно, что-то не так или не так в нашем подходе к прикреплению или развертыванию.

  • Стек исключений RichPopup

    - Стек исключений AdfFacesContext:

    SharedUI.jar: содержит скин, шаблоны, декларативные компоненты, js и т. Д.

    SharedCode.jar: содержит базовые классы и классы расширения фреймворка.


person Ahmed Mamdouh    schedule 14.09.2017    source источник
comment
java.lang.NoClassDefFoundError: oracle / adf / view / rich / component / rich / RichPopup в java.lang.Class.getDeclaredMethods0 (собственный метод) в java.lang.Class.privateGetDeclaredMethods (Class.java:2701) в java.lang .Class.getDeclaredMethods (Class.java:1975) по адресу oracle.adfinternal.controller.beans.AnnotationUtils.findAnnotatedMethods (AnnotationUtils.java:211) по адресу oracle.adfinternal.controller.beans.AnnotationUtils.ctlava: oracle.adfinternal.controller.beans.ManagedBeanFactory.instantiateBean (ManagedBeanFactory.java:906) по адресу oracle.adfinternal.controller.application.ManagedBeanELResolver.getValue (ManagedBeanEL.Desolver.getValue (ManagedBeanEL.Desolver.Computer). DemuxCompositeELResolver.java:176) в com.sun.faces.el.DemuxCompositeELResolver.getValue (DemuxCompositeELResolver.java:203) в com.sun.el.parser.AstIdentifier.getValue (AstIdentifier.java.s116) в .parser.AstValue.getBase (A stValue.java:150) на com.sun.el.parser.AstValue.getValue (AstValue.java:199) на com.sun.el.ValueExpressionImpl.getValue (ValueExpressionImpl.java:226) на com.sun.faces.facelets .el.TagValueExpression.getValue (TagValueExpression.java:109) в com.sun.faces.application.ApplicationImpl.createComponentApplyAnnotations (ApplicationImpl.java:1943) в com.sun.faces.application.ApplicationImpl.createComponent (:49 ApplicationImpl. ) в com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent (ComponentTagHandlerDelegateImpl.java:596) в com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.appler.jsf.jsf.ComponentTagHandlerDelegateImpl. faces.view.facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTagHandler.java:120) в javax.faces.view.facelets.CompositeFaceletHandler.apply (CompositeFaceletHandler.java:95) в javax.facelerHandler.java:95) в javax.faces.view.facelets. java: 137) в com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegateImpl.java:202) в javax.faces.view.facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTaglets.systems. .tag.jsf.core.FacetHandler.apply (FacetHandler.java:104) по адресу javax.faces.view.facelets.CompositeFaceletHandler.apply (CompositeFaceletHandler.java:95) по адресу javax.faces.view.facelets.DelegatingMetaTagHandlerMapply (DelegatingMetaTagHandlerMapply .java: 137) по адресу com.sun.faces.facelets.tag.jsf. ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegateImpl.java:202) в javax.faces.view.facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTagHandler.java:120) в com.sun.faces.facelets.tag.tag. java: 104) на javax.faces.view.facelets.CompositeFaceletHandler.apply (CompositeFaceletHandler.java:95) на javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler (DelegatingMetaTagHandler.java:137) в .tag.jsf.ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegateImpl.java:202) в javax.faces.view.facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTagHandler.java:120 )s.view.javalet. : 95) на oracle.adfinternal.view.faces.facelets.rich.IncludeDefHandler.apply (IncludeDefHandler.java:69) на com.sun.faces.facelets.compiler.NamespaceHandler.apply (NamespaceHandler.java:93) на com. солнце. лицо. лицо ts.compiler.EncodingHandler.apply (EncodingHandler.java:87) в com.sun.faces.facelets.impl.DefaultFacelet.include (DefaultFacelet.java:312) в com.sun.faces.facelets.impl.DefaultFacelet.include ( DefaultFacelet.java:371) в com.sun.faces.facelets.impl.DefaultFacelet.include (DefaultFacelet.java:350) в com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet (DefaultFaceletContext.java:199) в oracle .adfinternal.view.faces.facelets.rich.IncludeHandler.applyNextHandler (IncludeHandler.java:95) в com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegateImpl.jav:202) .facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTagHandler.java:120) по адресу com.sun.faces.facelets.tag.jsf.core.FacetHandler.apply (FacetHandler.java:104) по адресу javax.faces.view.facelets.DelegatingMeta. (DelegatingMetaTagHandler.java:137) в com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl .apply (ComponentTagHandlerDelegateImpl.java:202) по адресу javax.faces.view.facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTagHandler.java:120) по адресу javax.faces.view.facelets.CompositeFaceletHandler.acelet. adfinternal.view.faces.facelets.rich.IncludeDefHandler.apply (IncludeDefHandler.java:69) на com.sun.faces.facelets.compiler.NamespaceHandler.apply (NamespaceHandler.java:93) на com.sun.faces.facelets. компилятор. EncodingHandler.apply (EncodingHandler.java:87) в com.sun.faces.facelets.impl.DefaultFacelet.include (DefaultFacelet.java:312) в com.sun.faces.facelets.impl.DefaultFacelet.include (DefaultFacelet.java: 371) на com.sun.faces.facelets.impl.DefaultFacelet.include (DefaultFacelet.java:350) на com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet (DefaultFaceletContext.java:199) на oracle.adfinternal.view .faces.facelets.rich.IncludeHandler.applyNextHandler (IncludeHandler.java:95) на com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegate.DelegateImpl.java:202 )view javax.faceletss. .apply (DelegatingMetaTagHandler.java:120) в javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler (DelegatingMetaTagHandler.java:137) в com.sun.faces.facelets.tag.jsf.ComponentTagly ) в javax.faces.view.facelets.DelegatingMetaT agHandler.apply (DelegatingMetaTagHandler.java:120) на javax.faces.view.facelets.CompositeFaceletHandler.apply (CompositeFaceletHandler.java:95) на javax.faces.view.facelets.DelegatingMetaTagHandler.apply (ojagtingHandler.apply) .adfinternal.view.faces.facelets.rich.RichDocumentHandler.applyNextHandler (RichDocumentHandler.java:68) по адресу com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegateImpl.apply (ComponentTagHandlerDelegav202s.java) .java .facelets.DelegatingMetaTagHandler.apply (DelegatingMetaTagHandler.java:120) на com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply (ViewHandler.java:225) на com.sun.faces.facelets.compiler.NamespaceHandler .apply (NamespaceHandler.java:93) в com.sun.faces.facelets.compiler.EncodingHandler.apply (EncodingHandler.java:87) в com.sun.faces.facelets.impl.DefaultFacelet.apply (DefaultFacelet.java:161 ) в com.sun.faces.application.view.FaceletViewHandlingStrategy.build Просмотреть (FaceletViewHandlingStrategy.java:1006) на org.apache.myfaces.trinidad.view.ViewDeclarationLanguageWrapper.buildView (ViewDeclarationLanguageWrapper.java:94) на org.apache.myfaces.trinidad.view.ViewDeclarationLanguageWrapperWrapper в org.apache.myfaces.trinidadinternal.application.ViewDeclarationLanguageFactoryImpl $ ChangeApplyingVDLWrapper.buildView (ViewDeclarationLanguageFactoryImpl.java:322) в oracle.adfinternal.view.faces.lifecycle. ResponseRenderManager._processViewDefinitionLanguage (ResponseRenderManager.java:105) в oracle.adfinternal.view.faces.lifecycle.ResponseRenderManager.runRenderView (ResponseRenderManager.java:41) в oracle.adfinternal.view.faceImescycle.lifepl.Life 1264) на oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executeRenderResponse (LifecycleImpl.java:1107) на oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase (LifecycleImpl.java:348) на oracleview.adfinternal .faces.lifecycle.LifecycleImpl.render (LifecycleImpl.java:258) в javax.faces.webapp.FacesServlet.service (FacesServlet.java:651) в weblogic.servlet.internal.StubSecurityHelper $ ServletServiceAction.run (Stub.Security) ) по адресу weblogic.servlet.internal.StubSecurityHelper $ ServletServiceAction.run (StubSecurityHelper.java:260) по адресу weblogic.servlet.internal.StubSecurityHelper.invokeServlet (StubSecurityHelper.java:137) по адресу weblogic.java:137) t.internal.ServletStubImpl.execute (ServletStubImpl.java:350) в weblogic.servlet.internal.TailFilter.doFilter (TailFilter.java:25) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChain78Impl.java) .adf.model.servlet.ADFBindingFilter.doFilter (ADFBindingFilter.java:207) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.adfinternal.view.faces.webapp.ilter.Registration (RegistrationFilter.java:105) в org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl $ FilterListChain.doFilter (TrinidadFilterImpl.java:529) в oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter. ) в org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl $ FilterListChain.doFilter (TrinidadFilterImpl.java:529) в org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilter.at myfaces.trinidadinternal.webapp.TrinidadFilterI mpl.doFilter (TrinidadFilterImpl.java:232) в org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter (TrinidadFilter.java:92) в weblogic.servlet.internal.FilterChainImpl.doFinpl.OfilterChainImpl. .adf.library.webapp.LibraryFilter.doFilter (LibraryFilter.java:169) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.security.jps.ee.http.JpsAbsFilter $ 1. JpsAbsFilter.java:141) в java.security. AccessController.doPrivileged (собственный метод) в oracle.security.jps.util.JpsSubject.doAsPrivileged (JpsSubject.java:315) в oracle.security.jps.ee.util.JpsPlatformUtil.runJaracleMode (JpsPlatformUtil) в oracle.java:650 security.jps.ee.http.JpsAbsFilter.runJaasMode (JpsAbsFilter.java:124) в oracle.security.jps.ee.http.JpsAbsFilter.doFilter (JpsAbsFilter.java:232) в oracle.security.jps ..ee JpsFilter.doFilter (JpsFilter.java:94) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.dms.servlet.DMSServletFilter.doFilter (DMSServletFilter) at.java:24. .FilterChainImpl.doFilter (FilterChainImpl.java:78) на weblogic.servlet.internal.RequestEventsFilter.doFilter (RequestEventsFilter.java:32) на weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.Impl.doFilter (FilterChain78.Impl) internal.WebAppServletContext $ ServletInvocationAction.wrapRun (WebAppServletContext.java:3683) в веб-журналах c.servlet.internal.WebAppServletContext $ ServletInvocationAction.run (WebAppServletContext.java:3649) по адресу weblogic.security.acl.internal.AuthenticatedSubject.doAs (AuthenticatedSubject.java:326) по адресу weblogic.servletContext. java. .java: 2433) по адресу weblogic.servlet.internal.WebAppServletContext.securedExecute (WebAppServletContext.java:2281) по адресу weblogic.servlet.internal.WebAppServletContext.execute (WebAppServletContext.java:2259let.java:2259let. ServletRequestImpl.java:1686) в weblogic.servlet.internal.ServletRequestImpl.run (ServletRequestImpl.java:1646) в weblogic.servlet.provider.ContainerSupportProvid erImpl $ WlsRequestExecutor.run (ContainerSupportProviderImpl.java:270) в weblogic.invocation.ComponentInvocationContextManager._runAs (ComponentInvocationContextManager.java:348) в weblogic.invocation.ComponentInvocationContextManager.runAs (ComponentInvocationContextManager.java:333) в weblogic.work.LivePartitionUtility.doRunWorkUnderContext (LivePartitionUtility.java:54) на weblogic.work.PartitionUtility.runWorkUnderContext (PartitionUtility.java:41) на weblogic.work. SelfTuningWorkManagerImpl.runWorkUnderContext (SelfTuningWorkManagerImpl.java:640) по адресу weblogic.work.ExecuteThread.execute (ExecuteThread.java:406) по адресу weblogic.work.ExecuteThread.run (ExecuteThread) oracleFread.run (ExecuteThread). .adf.view.rich.component.rich.RichPopup в weblogic.utils.classloaders.GenericClassLoader.findLocalClass (GenericClassLoader.java:1025) в weblogic.utils.classloaders.GenericClassLoader.findClass (GenericClassLoader.findClass (GenericClassLoader) в веб-классе .classloaders.GenericClassLoader.doFindClass (GenericClassLoader.java:607) в weblogic.utils.classloaders.GenericClassLoader.loadClass (GenericClassLoader.java:539) в weblogic.utils.classloadersClass.Generic.classloadersClass.Generic. utils.classloaders.GenericClassLoader.loadClass (GenericClassLoader.java:469) ... Еще 131   -  person z21    schedule 15.09.2017
comment
oracle / adf / view / rich / context / AdfFacesContext java.lang.NoClassDefFoundError: oracle / adf / view / rich / context / AdfFacesContext в com.ntg.erp.core.view.ErpViewHandlerWrapper.renderView (ErpViewHandlerWrapper.java: oracle.adfinternal.view.faces.lifecycle.ResponseRenderManager.runRenderView (ResponseRenderManager.java:52) на oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse (LifecycleImpl.java:1264) на oracle.adfinternal.view. lifecycle.LifecycleImpl._executeRenderResponse (LifecycleImpl.java:1107) в oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase (LifecycleImpl.java:348) в oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.pl.pl. java: 258) по адресу javax.faces.webapp.FacesServlet.service (FacesServlet.java:651) по адресу weblogic.servlet.internal.StubSecurityHelper $ ServletServiceAction.run (StubSecurityHelper $.java:286) по адресу weblogic.Stublet. etServiceAction.run (StubSecurityHelper.java:260) по адресу weblogic.servlet.internal.StubSecurityHelper.invokeServlet (StubSecurityHelper.java:137) по адресу weblogic.servlet.internal.ServletStubImpl.execute (atlet.java:internal. .TailFilter.doFilter (TailFilter.java:25) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.adf.model.servlet.ADFBindingFilter.doFilter (ADFBindingFilter207. servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) по адресу oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter (RegistrationFilter.java:105) по адресу org.apache.myfaces.trinidadinternal.webapp.Trinidadinternal.webapp.Trinidadinternal.webapp. FilterListChain.doFilter (TrinidadFilterImpl.java:529) на oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter (AdsFilter.java:60) на org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterCharmpl TrinidadFilterImpl.java:529) на org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl (TrinidadFilterImpl.java:354) на org.apache.myfaces.trinidadinternal.webapp.Trinidad2 .apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter (TrinidadFilter.java:92) на weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) на com.ntg.erp.admin.view.servlets. AdminFilter.doFilter (AdminFilter.java:58) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.adf.library.webapp.LibraryFilter.doFilter (LibraryFilter.java:169.servlet) в weblogic.java:169.servlet .internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.security.jps.ee.http.JpsAbsFilter $ 1.run (JpsAbsFilter.java:141) в java.security.AccessController.doPrivileged (собственный метод) в oracle. security.jps.util.JpsSubject.doAsPrivileged (JpsSubject.java:315) по адресу oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode (JpsPlatformUtil.java:650) по адресу oracle.security.jps.ee.bsFilter.Jps. runJaasMode (JpsAbsFilter.java:124) в oracle.security.jps.ee.http.JpsAbsFilter.doFilter (JpsAbsFilter.java:232) в oracle.security.jps.ee.http.JpsFilter.doFilter (Jps:94) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) в oracle.dms.servlet.DMSServl etFilter.doFilter (DMSServletFilter.java:248) по адресу weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:78) по адресу weblogic.servlet.internal.RequestEventsFilter.doFilter (RequestEvents.Filter.java .FilterChainImpl.doFilter (FilterChainImpl.java:78) в weblogic.servlet.internal.WebAppServletContext $ ServletInvocationAction. weblogic.security.acl.internal.AuthenticatedSubject.doAs (AuthenticatedSubject.java:326) по адресу weblogic.security.service.SecurityManager.runAsForUserCode (SecurityManager.java:197) по адресу weblogic.servlet.provider.Wlssercurityr.Providels 203) на weblogic.servlet.provider.WlsSubjectHandle.run (WlsSubjectHandle.java:71) на weblogic.servlet.internal.WebAppServletContext.doSec uredExecute (WebAppServletContext.java:2433) в weblogic.servlet.internal.WebAppServletContext.securedExecute (WebAppServletContext.java:2281) в weblogic.servlet.internal.WebAppServletContext.execute (WebImAppServletContext) в веб-коде. .runInternal (ServletRequestImpl.java:1686) в weblogic.servlet.internal.ServletRequestImpl.run (ServletRequestImpl.java:1646) в weblogic.servlet.provider. ContainerSupportProviderImpl $ WlsRequestExecutor.run (ContainerSupportProviderImpl.java:270) в weblogic.invocation.ComponentInvocationContextManager._runAs (ComponentInvocationContextManager.java:348) в weblogic.invocation.ComponentInvocationContextManager.runAs (ComponentInvocationContextManager.java:333) в weblogic.work.LivePartitionUtility.doRunWorkUnderContext (LivePartitionUtility.java:54) по адресу weblogic.work.PartitionUtility.runWorkUnderContext (PartitionUtility.java:41) по адресу weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext (SelfTuningWorkManagerImpl.java:Exread.java: Execute.ava.exe: 406) в weblogic.work.ExecuteThread.run (ExecuteThread.java:346)   -  person Ahmed Mamdouh    schedule 15.09.2017


Ответы (1)


мы используем шаблоны страниц, у которых есть всплывающее окно с привязкой

person Ahmed Mamdouh    schedule 16.09.2017