问题描述
我最近将jsf Web应用程序迁移到omnifaces 3.8.1,并且在validateBean上遇到错误。
此接缝是由bean中的UIComponent属性引起的。
11:10:18,385 ERROR [io.undertow.request] (default task-9) UT005023: Exception handling request to /myexample-hr/faces/create.xhtml: javax.servlet.servletexception: java.lang.reflect.InvocationTargetException
at javax.faces.api@3.0.0.SP04//javax.faces.webapp.FacesServlet.executeLifecyle(FacesServlet.java:725)
at javax.faces.api@3.0.0.SP04//javax.faces.webapp.FacesServlet.service(FacesServlet.java:451)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
at io.opentracing.contrib.opentracing-jaxrs2//io.opentracing.contrib.jaxrs2.server.SpanFinishingFilter.doFilter(SpanFinishingFilter.java:52)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//com.umanxpert.myexample.hrweb.filter.TwoFactorAuthenticationFilter.doFilter(TwoFactorAuthenticationFilter.java:35)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//com.umanxpert.myexample.hrweb.filter.JSecurityCheckFilter.doFilter(JSecurityCheckFilter.java:29)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//com.umanxpert.myexample.hrweb.base.MultiTenancyFilter.doFilter(MultiTenancyFilter.java:32)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletdispatchingHandler.handleRequest(ServletdispatchingHandler.java:36)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
at io.undertow.core@2.2.2.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.security.SSLinformationAssociationHandler.handleRequest(SSLinformationAssociationHandler.java:132)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
at io.undertow.core@2.2.2.Final//io.undertow.server.handlers.disableCacheHandler.handleRequest(disableCacheHandler.java:33)
at io.undertow.core@2.2.2.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.core@2.2.2.Final//io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:53)
at io.undertow.core@2.2.2.Final//io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:59)
at io.undertow.core@2.2.2.Final//io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
at io.undertow.core@2.2.2.Final//io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
at io.undertow.core@2.2.2.Final//io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
at io.undertow.core@2.2.2.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.core@2.2.2.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:68)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
at io.undertow.core@2.2.2.Final//io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler.handleFirstRequest(ServletinitialHandler.java:269)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler.access$100(ServletinitialHandler.java:78)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler$2.call(ServletinitialHandler.java:133)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler$2.call(ServletinitialHandler.java:130)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at org.wildfly.extension.undertow@21.0.0.Final//org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1530)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler.dispatchRequest(ServletinitialHandler.java:249)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler.access$000(ServletinitialHandler.java:78)
at io.undertow.servlet@2.2.2.Final//io.undertow.servlet.handlers.ServletinitialHandler$1.handleRequest(ServletinitialHandler.java:99)
at io.undertow.core@2.2.2.Final//io.undertow.server.Connectors.executeRootHandler(Connectors.java:387)
at io.undertow.core@2.2.2.Final//io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:841)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
at org.jboss.xnio@3.8.2.Final//org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1280)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.IllegalStateException: java.lang.reflect.InvocationTargetException
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.getBeanProperty(Reflection.java:377)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromList(Reflection.java:486)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:471)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromMap(Reflection.java:496)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:474)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPath(Reflection.java:517)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPathsFromBean(Reflection.java:509)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.collectBasePropertyPaths(Reflection.java:480)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.getBaseBeanPropertyPaths(Reflection.java:462)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.taghandler.ValidateBean.validatecopiedBean(ValidateBean.java:404)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.taghandler.ValidateBean.processValidateBean(ValidateBean.java:378)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.taghandler.ValidateBean.lambda$apply$0(ValidateBean.java:339)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Events.lambda$wrap$1(Events.java:332)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Events$4.afterPhase(Events.java:368)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.eventlistener.CallbackPhaseListener.afterPhase(CallbackPhaseListener.java:68)
at com.sun.jsf-impl@2.3.14.SP01//com.sun.faces.lifecycle.Phase.handleAfterPhase(Phase.java:164)
at com.sun.jsf-impl@2.3.14.SP01//com.sun.faces.lifecycle.Phase.doPhase(Phase.java:82)
at com.sun.jsf-impl@2.3.14.SP01//com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:110)
at com.sun.jsf-impl@2.3.14.SP01//com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
at javax.faces.api@3.0.0.SP04//javax.faces.webapp.FacesServlet.executeLifecyle(FacesServlet.java:707)
... 63 more
Caused by: java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at deployment.myexample-application-0.0.1-SNAPSHOT.ear.myexample-hr-web.war//org.omnifaces.util.Reflection.getBeanProperty(Reflection.java:374)
... 107 more
Caused by: java.lang.IllegalStateException: Attempting to use a Behavior feature with a component that does not support any event types. Component must implement BehavIoUrHolder interface.
at javax.faces.api@3.0.0.SP04//javax.faces.component.UIComponentBase.assertClientBehaviorHolder(UIComponentBase.java:1727)
at javax.faces.api@3.0.0.SP04//javax.faces.component.UIComponentBase.getDefaultEventName(UIComponentBase.java:1712)
... 112 more
是否应将UIComponent排除在递归所需的属性类型之外?
是否有任何变通办法来保留我的UIComponent属性和validateBean?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)