JDK-6491377 : RFE: Have a means for clients running earlier JREs ( < 1.7) to receive notif from cascaded MBeans
Type:Enhancement
Component:core-svc
Sub-Component:javax.management
Affected Version:7
Priority:P4
Status:Closed
Resolution:Not an Issue
OS:generic
CPU:generic
Submitted:2006-11-08
Updated:2010-07-29
Resolved:2008-09-17
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
Clients running on prior JDK versions should have a means to register for
notifications emitted by cascaded MBeans.
Comments
EVALUATION
The RMI connector server now uses the Event Service by default so this problem no longer arises there.
17-09-2008
EVALUATION
The Event Service is now intended to be implemented as an MBeanServerForwarder between the Connector Server and the MBean Server, so the previous worries about permission checking no longer apply. This means that we can make its use be the default.
18-06-2008
EVALUATION
Discussed this with eamonn - this is his summary of the discussion:
* Today's unmodified connector server does not work with namespaces. It assumes it has added its listener to every MBean, but MBeans within namespaces will not have shown up in the queryNames(*:*). So addNL will appear to work but do nothing.
* We considered forwarding namespace-addNL to the Event Service and dealing with non-namespace-addNL as before. But this is hard because (a) we have to do two blocking operations simultaneously for fetchNotifs, the existing one plus the Event Service one; and (b) it's tricky to get sequence numbers right.
* So instead we can add a new option to the connector server which says to use the Event Service always. Without this option, the connector server continues to use the old mechanism. This must be the default because the permission-checking semantics are not the same with the Event Service. Without the option, the connector server will refuse an addNL for an MBean in a namespace. With the option, the connector server just forwards addNL, removeNL, and fetchNotifs to the Event Service and returns what it gets back.
* This option is different from the one that tells the client to use the Event Service. It is applicable even if the client is pre-JMX-2.0.
* When the connector server is using the Event Service, the idle timeout logic is disabled, either explicitly or as a side-effect of the fact that the connector client is continually calling fetchNotifs.