All,
I am deploying
an mbean manually using the EJBConnector from a Web startup hook (not via a .sar file or *-service.xml file). I
have to initialize the current thread with a user id and password to communicate
with another EJB at the same time. I'm getting the following security exceptions, attached below. What is the appropriate
method of solving this problem within JBoss? Can I declare this EJB adapter to
use my JAAS realm, or is it an mbean security
issue, or ??? If its an EJBConnector issue, where does the EJB
live? I haven't seen anything about this in the
pay for docs, which we just picked up (which are awesome, and well worth the $$,
BTW).
Thanks,
James
With a login context:
[spawn] [java] 10:55:18,534 ERROR [StartupService]
Error during execution of the startup class
com.betweenmarkets.startup.impl.InitMBeans
[spawn] [java] com.betweenmarkets.startup.StartupException: Error trying to get MBean Server [nested message: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=Administrator]
[spawn] [java] Nested exception:
[spawn] [java] java.lang.IllegalArgumentException: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=Administrator
[spawn] [java] at org.jboss.jmx.connector.ejb.EJBConnector.<init>(EJBConnector.java:114)
[spawn] [java] at com.betweenmarkets.mbean.JBossMBeanAgent.getMBeanServer(JBossMBeanAgent.java:95)
[spawn] [java] at com.betweenmarkets.startup.impl.InitMBeans.getMBeanServer(InitMBeans.java:68)
[spawn] [java] at com.betweenmarkets.startup.impl.InitMBeans.start(InitMBeans.java:43)
[spawn] [java] at com.betweenmarkets.startup.StartupService.startup(StartupService.java:58)
[spawn] [java] at com.betweenmarkets.startup.web.WebStartupAdapter$StartupThread.run(WebStartupAdapter.java:37)
[spawn] [java] at com.betweenmarkets.startup.web.WebStartupAdapter.contextInitialized(WebStartupAdapter.java:21)
[spawn] [java] at org.mortbay.jetty.servlet.WebApplicationContext.start(WebApplicationContext.java:430)
[spawn] [java] at org.jboss.jetty.Jetty.deploy(Jetty.java:405)
[spawn] [java] at org.jboss.jetty.JettyService.performDeploy(JettyService.java:244)
[spawn] [java] at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:300)
[spawn] [java] at org.jboss.deployment.MainDeployer.start(MainDeployer.java:678)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:513)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:481)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
[spawn] [java] at $Proxy4.deploy(Unknown Source)
[spawn] [java] at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:405)
[spawn] [java] at org.jboss.deployment.scanner.URLDeploymentScanner.scanDirectory(URLDeploymentScanner.java:586)
[spawn] [java] at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:465)
[spawn] [java] at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:237)
[spawn] [java] at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:162)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:894)
[spawn] [java] at $Proxy0.start(Unknown Source)
[spawn] [java] at org.jboss.system.ServiceController.start(ServiceController.java:340)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
[spawn] [java] at $Proxy3.start(Unknown Source)
[spawn] [java] at org.jboss.deployment.SARDeployer.start(SARDeployer.java:243)
[spawn] [java] at org.jboss.deployment.MainDeployer.start(MainDeployer.java:678)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:513)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:481)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:465)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:314)
[spawn] [java] at org.jboss.system.server.ServerImpl.start(ServerImpl.java:216)
[spawn] [java] at org.jboss.Main.boot(Main.java:142)
[spawn] [java] at org.jboss.Main$1.run(Main.java:375)
[spawn] [java] at java.lang.Thread.run(Thread.java:484)
[spawn] [java] com.betweenmarkets.startup.StartupException: Error trying to get MBean Server [nested message: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=Administrator]
[spawn] [java] Nested exception:
[spawn] [java] java.lang.IllegalArgumentException: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=Administrator
[spawn] [java] at org.jboss.jmx.connector.ejb.EJBConnector.<init>(EJBConnector.java:114)
[spawn] [java] at com.betweenmarkets.mbean.JBossMBeanAgent.getMBeanServer(JBossMBeanAgent.java:95)
[spawn] [java] at com.betweenmarkets.startup.impl.InitMBeans.getMBeanServer(InitMBeans.java:68)
[spawn] [java] at com.betweenmarkets.startup.impl.InitMBeans.start(InitMBeans.java:43)
[spawn] [java] at com.betweenmarkets.startup.StartupService.startup(StartupService.java:58)
[spawn] [java] at com.betweenmarkets.startup.web.WebStartupAdapter$StartupThread.run(WebStartupAdapter.java:37)
[spawn] [java] at com.betweenmarkets.startup.web.WebStartupAdapter.contextInitialized(WebStartupAdapter.java:21)
[spawn] [java] at org.mortbay.jetty.servlet.WebApplicationContext.start(WebApplicationContext.java:430)
[spawn] [java] at org.jboss.jetty.Jetty.deploy(Jetty.java:405)
[spawn] [java] at org.jboss.jetty.JettyService.performDeploy(JettyService.java:244)
[spawn] [java] at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:300)
[spawn] [java] at org.jboss.deployment.MainDeployer.start(MainDeployer.java:678)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:513)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:481)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
[spawn] [java] at $Proxy4.deploy(Unknown Source)
[spawn] [java] at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:405)
[spawn] [java] at org.jboss.deployment.scanner.URLDeploymentScanner.scanDirectory(URLDeploymentScanner.java:586)
[spawn] [java] at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:465)
[spawn] [java] at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:237)
[spawn] [java] at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:162)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:894)
[spawn] [java] at $Proxy0.start(Unknown Source)
[spawn] [java] at org.jboss.system.ServiceController.start(ServiceController.java:340)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.util.jmx.MBeanProxy.invoke(MBeanProxy.java:174)
[spawn] [java] at $Proxy3.start(Unknown Source)
[spawn] [java] at org.jboss.deployment.SARDeployer.start(SARDeployer.java:243)
[spawn] [java] at org.jboss.deployment.MainDeployer.start(MainDeployer.java:678)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:513)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:481)
[spawn] [java] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:465)
[spawn] [java] at java.lang.reflect.Method.invoke(Native Method)
[spawn] [java] at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
[spawn] [java] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
[spawn] [java] at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:314)
[spawn] [java] at org.jboss.system.server.ServerImpl.start(ServerImpl.java:216)
[spawn] [java] at org.jboss.Main.boot(Main.java:142)
[spawn] [java] at org.jboss.Main$1.run(Main.java:375)
[spawn] [java] at java.lang.Thread.run(Thread.java:484)
Without a login context:
[spawn]
[java] 11:34:55,297 ERROR [SecurityInterceptor] Authentication exception,
principal=null
[spawn] [java] 11:34:55,307 ERROR [StartupService] Error during execution of the startup class com.betweenmarkets.startup.impl.InitMBeans
[spawn] [java] com.betweenmarkets.startup.StartupException: Error trying to get MBean Server [nested message: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=null]
[spawn] [java] Nested exception:
[spawn] [java] java.lang.IllegalArgumentException: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=null
[spawn] [java] at org.jboss.jmx.connector.ejb.EJBConnector.<init>(EJBConnector.java:114)
[spawn] [java] at com.betweenmarkets.mbean.JBossMBeanAgent.getMBeanServer(JBossMBeanAgent.java:95)
[spawn] [java] 11:34:55,307 ERROR [StartupService] Error during execution of the startup class com.betweenmarkets.startup.impl.InitMBeans
[spawn] [java] com.betweenmarkets.startup.StartupException: Error trying to get MBean Server [nested message: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=null]
[spawn] [java] Nested exception:
[spawn] [java] java.lang.IllegalArgumentException: Adaptor could not be created: checkSecurityAssociation; nested exception is:
[spawn] [java] java.lang.SecurityException: Authentication exception, principal=null
[spawn] [java] at org.jboss.jmx.connector.ejb.EJBConnector.<init>(EJBConnector.java:114)
[spawn] [java] at com.betweenmarkets.mbean.JBossMBeanAgent.getMBeanServer(JBossMBeanAgent.java:95)