[
https://issues.apache.org/jira/browse/DERBY-3424?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12569713#action_12569713
]
John H. Embretsen commented on DERBY-3424:
------------------------------------------
Interesting approach. So I guess the plan is to allow remote JMX clients to
enable Derby-JMX at runtime by doing something like this?
JMXServiceURL url = new JMXServiceURL(
"service:jmx:rmi:///jndi/rmi://" + HOSTNAME + ":" + JMXPORT
+"/jmxrmi");
JMXConnector jmxc = JMXConnectorFactory.connect(url, null);
MBeanServerConnection mbeanServerConn = jmxc.getMBeanServerConnection();
ObjectName mgmtObjName = new ObjectName("org.apache.derby", "type",
"Management");
ObjectInstance mgmtObj =
mbeanServerConn.createMBean("org.apache.derby.mbeans.Management", mgmtObjName);
(and then invoke operations on that MBean).
With the current code line, I get an
Exception in thread "main" javax.management.ReflectionException: The MBean
class could not be loaded by the default loader repository
I assume some special handling of class loaders/loading is needed on the
server-side as long as we're using the platform MBeanServer... any thoughts on
this?
An admin can probably control access to this feature by using a security policy
file, but are there any specific plans within the 10.4 timeframe with regards
to security & this feature?
> Add an MBean that an application can register to change the state of Derby's
> JMX management
> -------------------------------------------------------------------------------------------
>
> Key: DERBY-3424
> URL: https://issues.apache.org/jira/browse/DERBY-3424
> Project: Derby
> Issue Type: New Feature
> Reporter: Daniel John Debrunner
> Assignee: Daniel John Debrunner
> Priority: Minor
>
> JMX in Derby was originally proposed as a mechanism to configure Derby
> replacing or enhancing the system properties which tend to be static in
> nature. Thus it is somewhat ironic that jmx is enabled with a static system
> property derby.system.jmx.
> I propose to add a public mbean that allows the state Derby's JMX management
> to be changed. This bean is not automatically registered by Derby if
> derby.system.jmx is false, but instead can be registered by an application. I
> believe this could occur at any time so that JMX could be enabled on a
> running application, possibly by a remote client.
> This standard Mbean (o.a.d.mbeans.Management & ManagementMBean) would have
> these operations & attribute:
> public boolean isManagementActive();
> public void startManagement();
> public void stopManagement();
> If Derby is not booted within the jvm then the operations would be no-ops.
> If derby.system.jmx is true then Derby will itself register an mbean that
> implements ManagementMBean to allow dynamic control of the visibility of
> Derby's mbeans.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.