MBean问题

问题描述

在一个开放源码的基础上添加我自己的功能……MBean新新新人……按照原来代码的流程在原有的MBean接口里添加了一个函数,不知道为什么,就是不能使用……直接报错……如果是getXXX,就报Attributenotfound,如果不操作属性,也报错……反正只要是我写的就不能用……请问这是为什么?完全仿照原来代码的流程添加的……接口里写了,implements的类里也写了……极度郁闷,请大侠赐教……

解决方案

解决方案二:
贴下代码看看..
解决方案三:
ControllerPanel中调用函数isVirtualDatabase(),代码如下:DatabaseBackendMBeanbackend=jmxClient.getDatabaseBackendProxy(vdbName,backendName,"admin","");booleanisVdb=backend.isVirtualDatabase();isVirtualDatabase定义的过程如下:publicinterfaceDatabaseBackendMBean中声明booleanisVirtualDatabase();在publicclassDatabaseBackendextendsAbstractStandardMBeanimplementsDatabaseBackendMBean中定义publicbooleanisVirtualDatabase(){returnmanagedBackend.isVirtualDatabase();}最后在managedBackend里定义publicsynchronizedbooleanisVirtualDatabase(){//code}问题在哪里呢??需要XXXX注册之类的机制么??
解决方案四:
自己顶一下吧……
解决方案五:
代码不全啊,看不明白。booleanisVdb=backend.isVirtualDatabase();//是这一句出错了吗?
解决方案六:
booleanisVdb=backend.isVirtualDatabase();这句调用,然后后面的那些是定义……函数应该是没有问题的,我想问的是,我是不是忽视了什么,导致我定义的函数不能被调用?
解决方案七:
引用5楼fledging1的回复:

booleanisVdb=backend.isVirtualDatabase();这句调用,然后后面的那些是定义……函数应该是没有问题的,我想问的是,我是不是忽视了什么,导致我定义的函数不能被调用?

那俺就不清楚了,能力有限。你可以看一下“synchronized”的资料,我对这个仅是概念了解,你可以看看是不是问题出在这里。
解决方案八:
引用6楼lvbang_lzt的回复:

那俺就不清楚了,能力有限。你可以看一下“synchronized”的资料,我对这个仅是概念了解,你可以看看是不是问题出在这里。

谢谢了先~我再看看

时间: 2025-01-07 19:21:36

MBean问题的相关文章

从零开始玩转JMX(一)——简介和Standard MBean

JMX的全称为Java Management Extensions. 顾名思义,是管理Java的一种扩展.这种机制可以方便的管理.监控正在运行中的Java程序.常用于管理线程,内存,日志Level,服务重启,系统环境等. 简介 基本术语 MBean:是Managed Bean的简称,可以翻译为"管理构件".在JMX中MBean代表一个被管理的资源实例,通过MBean中暴露的方法和属性,外界可以获取被管理的资源的状态和操纵MBean的行为.事实上,MBean就是一个Java Object

JMX远程注册MBean报错The MBean class could not be loaded by the default loader reposit

问题描述 在远程机器上运行一个MBeanServer(如192.168.1.100),spring配置:<!--导出springbean所有的方法和属性不使用赖加载--><beanid="exporter"class="org.springframework.jmx.export.MBeanExporter"lazy-init="false"><!--需要导出为MBean的spring类--><prope

从零开始玩转JMX(三)——Model MBean

Model MBean 相对于Standard MBean,Model MBean更加灵活.如果我们不能修改已有的Java类,那么使用Model MBean是不错的选择. Model MBean也是一种专门化的动态管理构件.它是预制的.通用的和动态的 MBean 类,已经包含了所有必要缺省行为的实现,并允许在运行时添加或覆盖需要定制的那些实现.JMX规范规定该类必须实现为javax.management.modelmbean.RequiredModelMBean,管理者要做的就是实例化该类,并配

JConsole怎样实现订阅一个MBean的事件?

问题描述 如题:JConsole怎样实现订阅一个MBean的事件?在网上查了一下,只有一个在Agent中添加监听器的例子,基本上都是:MBeanServer.addNotificationListener()但是JConsole或者JMX客户端不可能通过代码形式把监听代码写到JMX服务器所在的JVM里.所以,网上看到的例子几乎没有任何价值. 解决方案 哥们,这个从代码上实现是可以的.我想JConsole内部也是通过连接到相应JVM的MBeanServer上,并根据你选择要订阅的MBean,并调用

[翻译]JDK 8 兼容性指南

翻译官方文档,删除部分可忽略. 译者:坤谷,井桐,激酶 兼容性是一个复杂的问题. 本文介绍了Java平台潜在的三种不兼容问题: 源码: 源码兼容性问题关注Java源代码转换成class文件是否兼容,包括代码是否仍然可编译. 二进制: 在Java语言规范中,二进制兼容性定义为:"类的改变是二进制兼容的(或者不破坏二进制兼容性),是指如果改变前的类的二进制在链接时没有错误,那么改变后的类在链接时仍然没有错误." 行为 : 行为兼容性包括在运行时执行的代码的语义. 欲了解更多信息,请参阅Op

Jboss Ejb MDB

  对jms不是很熟悉,弄了几天终于有了点思路.这里有两个程序.增加了个queue-example-service.xml配置文件很简单,复杂点的在以后在说.     package org.jboss.tutorial.mdb.bean;   import javax.ejb.MessageDriven; import javax.ejb.ActivationConfigProperty; import javax.jms.Message; import javax.jms.MessageLi

jmx的简单学习

背景 前段时间在看btrace源码和jdk一些源码的时候,经常会看到一些jmx的相关内容.以前对jmx基本是一片空白区,花了点时间学习记录下.   过程 jmx总体架构图:  说明:  1.  Agent : javax.management.MBeanServer实现了Agent的功能,以标准的方式给出了管理系统访问 JMX 框架的接口 2. SubAgent: javax.management.MBeans实现了SubAgent的功能,以标准的方式给出了 JMX 框架访问资源的接口 MBea

基于JMX通知框架的AJAX深度开发

ajax 文章提示 AJAX和JMX分别位于系统管理栈的两个对立端.然而,如今AJAX模型已普遍存在于丰富的浏览器客户端.这使得该模型在构架领域为在问题解析管道中提高支持模式所具有的优点变得模糊起来. 本文将详细描述一种AJAX架构的优点-它可以把管理状态"广播"到一个能够使用浏览器的用户基上而不必等待页面更新. 这种架构是一个通用模型的扩展-可用于把JMX事件和属性记载到一个服务器端日志文件中:而且,这种变化进一步把管理信息记录或"广播"到(支持AJAX的)用户基

Apache commons简介

apache Apache Commons是一个非常有用的工具包,解决各种实际的通用问题,下面是一个简述表,详细信息访问http://jakarta.apache.org/commons/index.html BeanUtilsCommons-BeanUtils 提供对 Java 反射和自省API的包装 BetwixtBetwixt提供将 JavaBean 映射至 XML 文档,以及相反映射的服务. ChainChain 提供实现组织复杂的处理流程的"责任链模式". CLICLI 提供