Legacy platform

AccessControl exception is thrown at MBean registration when starting agent, integration server, or application server

When starting the integration server, agent, or application server, an AccessControl exception is thrown when registering MBeans.

Problem

The following exception is thrown or printed:
Caused by: java.security.AccessControlException: access denied
    ("javax.management.MBeanTrustPermission"   at
    java.security.AccessControlContext.checkPermission(AccessControlContext.java:457)   at
    java.lang.SecurityManager.checkPermission(SecurityManager.java:585)   at
    com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission(DefaultMBeanS  
    at
    com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterce  
    at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)   at
    com.ibm.sterling.afc.jmx.PLTJMXInitializer.registerMBeans(PLTJMXInitializer.java:111)

Solution

To provide monitoring functionality, Sterling™ Order Management System installs MBeans. If you, the application server, or the JMS provider installs the java.lang.SecurityManager, ensure that the security manager allows MBean registration. Otherwise, you must disable JMX-based monitoring. To enable this permission, refer to the instructions provided by the security manager. If you are using Java's default security manager, enable the following policy in the <jre>/lib/security/java.policy file:

permission javax.management.MBeanTrustPermission "register"

Typically, agent servers and integration servers use the JRE under <INSTALL>/jdk/jre, unless configured otherwise.