-
Jul 11th, 2007, 03:17 PM
#1
weblogic.management.NoAccessRuntimeException
I am using spring 2.0.4, WebLogic 9.2 MP1, JDK 5 (150_06) and trying to get a custom JMX bean exported so that I can use the Wily Introscope tool and monitor a few application level things. I can get the bean to export fine, but when I update the app through the WLS console so that I can deploy changes I get an error when the exporter attempts to unregister the JMX bean:
2007-07-11 13:57:30,714 ERROR [org.springframework.beans.factory.support.Disposab leBeanAdapter] - <Couldn't invoke destroy method of bean with name 'exporter'>
weblogic.management.NoAccessRuntimeException: Access not allowed for subject: principals=[], on ResourceType: DualAuthLogonStatistics Action: unregister, Target: null
at weblogic.management.internal.SecurityHelper$IsAcce ssAllowedPrivilegeAction.wlsRun(SecurityHelper.jav a:800)
at weblogic.management.internal.SecurityHelper$IsAcce ssAllowedPrivilegeAction.run(SecurityHelper.java:6 64)
at weblogic.security.acl.internal.AuthenticatedSubjec t.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Se curityManager.java:121)
at weblogic.management.internal.SecurityHelper.isAcce ssAllowed(SecurityHelper.java:259)
at weblogic.management.internal.SecurityHelper.isAcce ssAllowed(SecurityHelper.java:148)
at weblogic.management.mbeanservers.internal.Security Interceptor.checkUnregisterSecurity(SecurityInterc eptor.java:615)
at weblogic.management.mbeanservers.internal.Security Interceptor.unregisterMBean(SecurityInterceptor.ja va:303)
at weblogic.management.mbeanservers.internal.Authenti catedSubjectInterceptor$7.run(AuthenticatedSubject Interceptor.java:260)
at weblogic.security.acl.internal.AuthenticatedSubjec t.doAs(AuthenticatedSubject.java:363)
at weblogic.management.mbeanservers.internal.Authenti catedSubjectInterceptor.unregisterMBean(Authentica tedSubjectInterceptor.java:258)
at weblogic.management.jmx.mbeanserver.WLSMBeanServer .unregisterMBean(WLSMBeanServer.java:203)
at org.springframework.jmx.support.MBeanRegistrationS upport.unregisterBeans(MBeanRegistrationSupport.ja va:206)
at org.springframework.jmx.export.MBeanExporter.destr oy(MBeanExporter.java:397)
at org.springframework.beans.factory.support.Disposab leBeanAdapter.destroy(DisposableBeanAdapter.java:1 45)
at org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.destroyBean(DefaultSingletonB eanRegistry.java:335)
at org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.destroySingleton(DefaultSingl etonBeanRegistry.java:308)
at org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.destroySingletons(DefaultSing letonBeanRegistry.java:282)
at org.springframework.context.support.AbstractApplic ationContext.destroyBeans(AbstractApplicationConte xt.java:676)
at org.springframework.context.support.AbstractApplic ationContext.doClose(AbstractApplicationContext.ja va:654)
at org.springframework.context.support.AbstractApplic ationContext.close(AbstractApplicationContext.java :621)
at org.springframework.web.servlet.FrameworkServlet.d estroy(FrameworkServlet.java:533)
at weblogic.servlet.internal.StubSecurityHelper$Servl etDestroyAction.run(StubSecurityHelper.java:292)
at weblogic.security.acl.internal.AuthenticatedSubjec t.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(Se curityManager.java:121)
at weblogic.servlet.internal.StubSecurityHelper.destr oyServlet(StubSecurityHelper.java:81)
at weblogic.servlet.internal.StubLifecycleHelper.dest royOneInstance(StubLifecycleHelper.java:134)
at weblogic.servlet.internal.StubLifecycleHelper.dest roy(StubLifecycleHelper.java:124)
at weblogic.servlet.internal.ServletStubImpl.destroy( ServletStubImpl.java:412)
at weblogic.servlet.internal.WebAppServletContext.des troyServlets(WebAppServletContext.java:2862)
at weblogic.servlet.internal.WebAppServletContext.des troy(WebAppServletContext.java:2825)
at weblogic.servlet.internal.ServletContextManager.de stroyContext(ServletContextManager.java:236)
at weblogic.servlet.internal.HttpServer.unloadWebApp( HttpServer.java:440)
at weblogic.servlet.internal.WebAppModule.destroyCont exts(WebAppModule.java:916)
at weblogic.servlet.internal.WebAppModule.deactivate( WebAppModule.java:346)
at weblogic.application.internal.flow.ModuleStateDriv er$2.previous(ModuleStateDriver.java:188)
at weblogic.application.utils.StateMachineDriver.prev iousState(StateMachineDriver.java:52)
at weblogic.application.utils.StateMachineDriver.prev iousState(StateMachineDriver.java:42)
at weblogic.application.internal.flow.ModuleStateDriv er.deactivate(ModuleStateDriver.java:71)
at weblogic.application.internal.flow.ScopedModuleDri ver.deactivate(ScopedModuleDriver.java:206)
at weblogic.application.internal.flow.ModuleListenerI nvoker.deactivate(ModuleListenerInvoker.java:124)
at weblogic.application.internal.flow.DeploymentCallb ackFlow$2.previous(DeploymentCallbackFlow.java:387 )
at weblogic.application.utils.StateMachineDriver.prev iousState(StateMachineDriver.java:52)
at weblogic.application.utils.StateMachineDriver.prev iousState(StateMachineDriver.java:42)
at weblogic.application.internal.flow.DeploymentCallb ackFlow.deactivate(DeploymentCallbackFlow.java:88)
at weblogic.application.internal.flow.DeploymentCallb ackFlow.deactivate(DeploymentCallbackFlow.java:80)
at weblogic.application.internal.BaseDeployment$2.pre vious(BaseDeployment.java:641)
at weblogic.application.utils.StateMachineDriver.prev iousState(StateMachineDriver.java:52)
at weblogic.application.utils.StateMachineDriver.prev iousState(StateMachineDriver.java:42)
at weblogic.application.internal.BaseDeployment.deact ivate(BaseDeployment.java:234)
at weblogic.application.internal.DeploymentStateCheck er.deactivate(DeploymentStateChecker.java:189)
at weblogic.deploy.internal.targetserver.AppContainer Invoker.deactivate(AppContainerInvoker.java:99)
at weblogic.deploy.internal.targetserver.BasicDeploym ent.deactivate(BasicDeployment.java:260)
at weblogic.deploy.internal.targetserver.BasicDeploym ent.deactivateFromServerLifecycle(BasicDeployment. java:449)
at weblogic.management.deploy.internal.DeploymentAdap ter$1.doDeactivate(DeploymentAdapter.java:75)
at weblogic.management.deploy.internal.DeploymentAdap ter.deactivate(DeploymentAdapter.java:201)
at weblogic.management.deploy.internal.AppTransition$ 6.transitionApp(AppTransition.java:66)
at weblogic.management.deploy.internal.ConfiguredDepl oyments.transitionApps(ConfiguredDeployments.java: 233)
at weblogic.management.deploy.internal.ConfiguredDepl oyments.deactivate(ConfiguredDeployments.java:198)
at weblogic.management.deploy.internal.ConfiguredDepl oyments.undeploy(ConfiguredDeployments.java:191)
at weblogic.management.deploy.internal.DeploymentServ erService.shutdownApps(DeploymentServerService.jav a:188)
at weblogic.management.deploy.internal.DeploymentServ erService.shutdownHelper(DeploymentServerService.j ava:120)
at weblogic.application.ApplicationService.halt(Appli cationService.java:142)
at weblogic.t3.srvr.ServerServicesManager.haltInterna l(ServerServicesManager.java:417)
at weblogic.t3.srvr.ServerServicesManager.halt(Server ServicesManager.java:264)
at weblogic.t3.srvr.T3Srvr.shutdown(T3Srvr.java:865)
at weblogic.t3.srvr.T3Srvr.forceShutdown(T3Srvr.java: 773)
at weblogic.t3.srvr.ServerRuntime.forceShutdown(Serve rRuntime.java:330)
at weblogic.server.RemoteLifeCycleOperationsImpl.forc eShutdown(RemoteLifeCycleOperationsImpl.java:57)
at weblogic.server.RemoteLifeCycleOperationsImpl_WLSk el.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicS erverRef.java:548)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicSe rverRef.java:438)
at weblogic.security.acl.internal.AuthenticatedSubjec t.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(Se curityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest (BasicServerRef.java:434)
at weblogic.rmi.internal.BasicServerRef.access$300(Ba sicServerRef.java:57)
at weblogic.rmi.internal.BasicServerRef$BasicExecuteR equest.run(BasicServerRef.java:965)
at weblogic.work.ExecuteThread.execute(ExecuteThread. java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java :181)
When the app updates, the JMX bean is not registered again and I have to bounce the WLS node in order to have it register. I will post the spring config XML file because this post is too long.
Any ideas?
Last edited by s814jdh; Jul 11th, 2007 at 03:34 PM.
-
Jul 11th, 2007, 03:35 PM
#2
Here is the application spring config XML:
<bean id="dualAuthStats" class="com.zionsbancorp.cbt.management.DualAuthSta ts" scope="singleton"/>
<bean id="exporter" class="org.springframework.jmx.export.MBeanExporte r" lazy-init="false">
<property name="server" ref="mBeanServer" />
<property name="assembler" ref="assembler"></property>
<property name="beans">
<map>
<entry key="cbt:Name=ESSPRuntime,Type=DualAuthLogonStatis tics" value-ref="dualAuthStats" />
</map>
</property>
<property name="registrationBehaviorName" value="REGISTRATION_IGNORE_EXISTING" />
<property name="autodetect" value="true" />
</bean>
<bean id="assembler" class="org.springframework.jmx.export.assembler.In terfaceBasedMBeanInfoAssembler">
<property name="interfaceMappings">
<props>
<prop key="cbt:Name=ESSPRuntime,Type=DualAuthLogonStatis tics">com.zionsbancorp.cbt.management.DualAuthStat sMBean</prop>
</props>
</property>
</bean>
<bean id="mBeanServer" class="org.springframework.jndi.JndiObjectFactoryB ean">
<property name="jndiName" value="java:comp/env/jmx/runtime" />
</bean>
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules