+ ObjectName onName = on;
+ // if on is without transaction, add it. Reason is that when using getters on MXBeans the transaction name is stripped
+ onName = ObjectNameUtil.withTransactionName(onName, getTransactionName());
+ // if this is service reference and user requests for implementation, look it up
+ onName = ConfigRegistryJMXClient.translateServiceRefIfPossible(onName, clazz, configMBeanServer);
+ onName = ObjectNameUtil.withTransactionName(onName, getTransactionName());
+ return JMX.newMXBeanProxy(configMBeanServer, onName, clazz);