Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java EJB错误的未授权调用程序_Java_Jakarta Ee_Jboss - Fatal编程技术网

Java EJB错误的未授权调用程序

Java EJB错误的未授权调用程序,java,jakarta-ee,jboss,Java,Jakarta Ee,Jboss,我的web项目是在Jboss EAP 6.1上运行的JEE6 web应用程序 托管Bean具有viewScope,EJB是无状态的 我在EJB上使用了@SecurityDomain(“其他”),在EJB的某些方法上使用了@RolesAllowed 我遇到了一个奇怪的问题,第一次托管bean成功调用EJB方法,但第二次它没有通过安全检查,并说我没有权限 奇怪的是,当我尝试使用此方法打印调用方凭证时(在取出EJB上的安全域注释之后) public void printUserRole() { 它仍然

我的web项目是在Jboss EAP 6.1上运行的JEE6 web应用程序

托管Bean具有viewScope,EJB是无状态的

我在EJB上使用了@SecurityDomain(“其他”),在EJB的某些方法上使用了@RolesAllowed

我遇到了一个奇怪的问题,第一次托管bean成功调用EJB方法,但第二次它没有通过安全检查,并说我没有权限

奇怪的是,当我尝试使用此方法打印调用方凭证时(在取出EJB上的安全域注释之后) public void printUserRole() {

它仍然在两次调用中正确地打印出用户名和角色

我使用了Jboss eap 6.1默认的“其他”安全域

这就是错误:

14:49:11738错误[org.jboss.as.ejb3.invocation](http localhost/127.0.0.1:8080-2)JBAS014134:EJB在组件EJB/ar/HistItemController上调用方法public abstract void gov.irs.ais.controller.CrudControllerLocal.updateItem失败(gov.irs.ais.model.BaseModel)抛出java.lang.Exception:javax.ejb.EJBAccessException:JBAS014502:方法调用:public abstract void gov.irs.ais.controller.CrudControllerLocal.updateItem(gov.irs.ais.model.BaseModel)抛出java.lang.bean的异常:ejb/ar/HistItemController不允许

  at org.jboss.as.ejb3.security.AuthorizationInterceptor.processInvocation(AuthorizationInterceptor.java:114) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:76) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:55) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:182) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:72) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at gov.irs.ais.controller.CrudControllerLocal$$$view16.updateItem(Unknown Source) [ais-ejb.jar:]

  at gov.irs.ais.web.BaseEventHandlingLocal.doUpdateItem(BaseEventHandlingLocal.java:114)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_21]

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [rt.jar:1.6.0_21]

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [rt.jar:1.6.0_21]

  at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_21]

  at org.apache.el.parser.AstValue.invoke(AstValue.java:258)

  at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278)

  at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40) [weld-core-1.1.13.Final-redhat-1.jar:1.1.13.Final-redhat-1]

  at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50) [weld-core-1.1.13.Final-redhat-1.jar:1.1.13.Final-redhat-1]

  at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

  at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)

  at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)

  at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:775)

  at javax.faces.component.UICommand.broadcast(UICommand.java:300)

  at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:786)

  at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1251)

  at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

  at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

  at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

  at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)

  at gov.irs.ais.web.util.SessionTimeoutFilter.doFilter(SessionTimeoutFilter.java:81)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)

  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)

  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)

  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:499)

  at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)

  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)

  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)

  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)

  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)

  at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)

  at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)

  at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)

  at java.lang.Thread.run(Thread.java:619) [rt.jar:1.6.0_21]

14:49:11770严重[gov.irs.ais.web.BaseEventHandlingLocal](http localhost/127.0.0.1:8080-2)JBAS014502:方法调用:公共抽象void gov.irs.ais.controller.CrudControllerLocal.updateItem(gov.irs.ais.model.BaseModel)抛出java.lang.bean异常:不允许ejb/ar/HistItemController

您能更清楚地说明您遇到的确切错误是什么吗?这是我得到的错误。我想我配置了ejb并正确部署了它,因为它第一次成功调用了安全ejb方法,但第二次它抛出了错误:
  at org.jboss.as.ejb3.security.AuthorizationInterceptor.processInvocation(AuthorizationInterceptor.java:114) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:76) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:59) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:55) [jboss-as-ejb3-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.TCCLInterceptor.processInvocation(TCCLInterceptor.java:45) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:165) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:182) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]

  at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:72) [jboss-as-ee-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at gov.irs.ais.controller.CrudControllerLocal$$$view16.updateItem(Unknown Source) [ais-ejb.jar:]

  at gov.irs.ais.web.BaseEventHandlingLocal.doUpdateItem(BaseEventHandlingLocal.java:114)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_21]

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [rt.jar:1.6.0_21]

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [rt.jar:1.6.0_21]

  at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_21]

  at org.apache.el.parser.AstValue.invoke(AstValue.java:258)

  at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:278)

  at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40) [weld-core-1.1.13.Final-redhat-1.jar:1.1.13.Final-redhat-1]

  at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50) [weld-core-1.1.13.Final-redhat-1.jar:1.1.13.Final-redhat-1]

  at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

  at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:148)

  at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)

  at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:775)

  at javax.faces.component.UICommand.broadcast(UICommand.java:300)

  at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:786)

  at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1251)

  at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

  at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

  at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

  at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)

  at gov.irs.ais.web.util.SessionTimeoutFilter.doFilter(SessionTimeoutFilter.java:81)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)

  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)

  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)

  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:499)

  at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.2.1.Final-redhat-10.jar:7.2.1.Final-redhat-10]

  at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)

  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)

  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)

  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)

  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)

  at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)

  at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)

  at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)

  at java.lang.Thread.run(Thread.java:619) [rt.jar:1.6.0_21]