public class RequiredModelMBean extends Object implements ModelMBean, MBeanRegistration, NotificationEmitter
管理対象になる Java リソースは、MBeanServer の createMBean メソッドを使って、RequiredModelMBean をインスタンス化します。次に、RequiredModelMBean インスタンスの MBeanInfo および Descriptor を設定します。ModelMBean の ModelMBeanInfo で公開された属性とオペレーションには、MBean、コネクタ、アダプタからアクセスできます。Descriptor を使って、管理対象アプリケーション内の値とメソッドを定義し、ModelMBean の属性およびオペレーションにマップすることができます。このマッピングは、XML 形式のファイル内、または実行時にプログラムを使って動的に定義できます。
MBeanServer 内でインスタンス化される各 RequiredModelMBean が管理対象になります。
これらの属性およびオペレーションには、MBeanServer に接続されたコネクタまたはアダプタ経由でリモートアクセスできます。
JMX 準拠の MBean でない Java オブジェクトは、MBeanServer に登録できません。RequiredModelMBean をインスタンス化することで、リソースは MBean が有効であることを保証されます。 すべての public メソッドで、MBeanException および RuntimeOperationsException がスローされる必要があります。これにより、分散型通信 (RMI、EJB など) からの例外のラップが可能になります。
| コンストラクタと説明 |
|---|
RequiredModelMBean()
空の ModelMBeanInfo で
RequiredModelMBean を構築します。 |
RequiredModelMBean(ModelMBeanInfo mbi)
渡された ModelMBeanInfo を使って RequiredModelMBean オブジェクトを構築します。
|
| 修飾子と型 | メソッドと説明 |
|---|---|
void |
addAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName, Object inhandback)
NotificationListener インタフェースを実装するオブジェクトをリスナーとして登録します。
|
void |
addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
NotificationListener インタフェースを実装するオブジェクトをリスナーとして登録します。
|
Object |
getAttribute(String attrName)
この ModelMBean に定義された特定の属性の値を返します。
|
AttributeList |
getAttributes(String[] attrNames)
ModelMBean 内の複数の属性の値を返します。
|
protected ClassLoaderRepository |
getClassLoaderRepository()
クラスのロードに使用されたクラスローダーリポジトリを返します。
|
MBeanInfo |
getMBeanInfo()
この RequiredModelMBean が管理用に公開する属性、オペレーション、コンストラクタ、および通知を返します。
|
MBeanNotificationInfo[] |
getNotificationInfo()
常に RequiredModelMBean によって生成される Notification の配列を返します。
|
Object |
invoke(String opName, Object[] opArgs, String[] sig)
RequiredModelMBean 上または経由でメソッドを呼び出し、その実行結果を返します。
|
void |
load()
この MBean インスタンスを、永続ストアで見つかる MBean 用のデータでインスタンス化します。
|
void |
postDeregister()
MBean サーバーから登録解除したあと、MBean が必要なオペレーションを実行できるようにします。
|
void |
postRegister(Boolean registrationDone)
MBean サーバーへの登録が成功または失敗したあと、MBean が必要なオペレーションを実行できるようにします。
|
void |
preDeregister()
MBean サーバーから登録解除する前に、MBean が必要なオペレーションを実行できるようにします。
|
ObjectName |
preRegister(MBeanServer server, ObjectName name)
MBean サーバーに登録する前に必要なオペレーションを MBean が実行することを許可します。
|
void |
removeAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName)
RequiredModelMBean から attributeChangeNotification のリスナーを削除します。
|
void |
removeNotificationListener(NotificationListener listener)
RequiredModelMBean から Notification のリスナーを削除します。
|
void |
removeNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
この MBean からリスナーを削除します。
|
void |
sendAttributeChangeNotification(Attribute inOldVal, Attribute inNewVal)
ModelMBean 上の登録済み AttributeChangeNotification リスナーに、属性の古い値と新しい値を含む attributeChangeNotification を送信します。
|
void |
sendAttributeChangeNotification(AttributeChangeNotification ntfyObj)
ModelMBean 上の登録済み attributeChangeNotification リスナーに渡される attributeChangeNotification を送信します。
|
void |
sendNotification(Notification ntfyObj)
ModelMBean 上の登録済み Notification リスナーに、jmx.modelmbean.generic 通知として渡される Notification を送信します。
|
void |
sendNotification(String ntfyText)
ModelMBean 上の登録済み Notification リスナーに渡されるテキスト文字列を含む Notification を送信します。
|
void |
setAttribute(Attribute attribute)
指定された ModelMBean の特定の属性の値を設定します。
|
AttributeList |
setAttributes(AttributeList attributes)
この ModelMBean の属性の配列の値を設定します。
|
void |
setManagedResource(Object mr, String mr_type)
この ModelMBean 管理インタフェース (MBeanInfo と Descriptor) 内のすべてのメソッドの実行先オブジェクトのインスタンスハンドルを設定します。
|
void |
setModelMBeanInfo(ModelMBeanInfo mbi)
渡された ModelMBeanInfo を使って ModelMBean オブジェクトを初期化します。
|
void |
store()
この MBean インスタンスの現在の状態を取り込み、永続ストアに書き出します。
|
public RequiredModelMBean()
throws MBeanException,
RuntimeOperationsException
RequiredModelMBean を構築します。
RequiredModelMBean の MBeanInfo および Descriptor は、setModelMBeanInfo(javax.management.modelmbean.ModelMBeanInfo) メソッドでカスタマイズできます。RequiredModelMBean の MBeanInfo および Descriptor のカスタマイズ後、RequiredModelMBean を MBeanServer に登録することができます。
MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - オブジェクトの構築時に RuntimeException をラップする。public RequiredModelMBean(ModelMBeanInfo mbi) throws MBeanException, RuntimeOperationsException
setModelMBeanInfo(javax.management.modelmbean.ModelMBeanInfo) メソッドを使って RequiredModelMBean の MBeanInfo および Descriptor をカスタマイズできます。RequiredModelMBean の MBeanInfo および Descriptor のカスタマイズ後、RequiredModelMBean を MBeanServer に登録することができます。mbi - RequiredModelMBean によって使用される ModelMBeanInfo オブジェクト。指定された ModelMBeanInfo が、setModelMBeanInfo(javax.management.modelmbean.ModelMBeanInfo) で指定されたように複製され、変更されるMBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - {link java.lang.IllegalArgumentException} をラップする。パラメータに渡される MBeanInfo が null の場合。public void setModelMBeanInfo(ModelMBeanInfo mbi) throws MBeanException, RuntimeOperationsException
ModelMBean が現在登録されている場合、このメソッドは IllegalStateException をラップする RuntimeOperationsException をスローします。
指定の inModelMBeanInfo に GENERIC または ATTRIBUTE_CHANGE 通知の ModelMBeanNotificationInfo が含まれない場合、RequiredModelMBean により、デフォルトの ModelMBeanNotificationInfo が提供されます。
setModelMBeanInfo、インタフェース: ModelMBeanmbi - ModelMBean によって使用される ModelMBeanInfo オブジェクト。MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする。IllegalStateException をラップする。public void setManagedResource(Object mr, String mr_type) throws MBeanException, RuntimeOperationsException, InstanceNotFoundException, InvalidTargetObjectTypeException
setManagedResource、インタフェース: ModelMBeanmr - 管理対象のリソースになっているオブジェクトmr_type - 管理対象のリソースの参照の型MBeanException - オブジェクトのイニシャライザが例外をスローした場合。InstanceNotFoundException - 管理対象のリソースオブジェクトが見つからない場合InvalidTargetObjectTypeException - 管理対象のリソースの型は ObjectReference でなければならない。RuntimeOperationsException - リソースの設定時に RuntimeException をラップする。public void load()
throws MBeanException,
RuntimeOperationsException,
InstanceNotFoundException
この MBean インスタンスを、永続ストアで見つかる MBean 用のデータでインスタンス化します。データとして、属性とオペレーションの値をロードできます。
このメソッドは、このインスタンスの構築または初期化時、MBean を MBeanServer に登録する前に呼び出します。
このクラスの実装が永続性をサポートしない場合、ServiceNotFoundException をラップする MBeanException がスローされます。
load、インタフェース: PersistentMBeanMBeanException - その他の例外をラップする場合、または永続性がサポートされない場合RuntimeOperationsException - 永続メカニズムからの例外をラップする場合InstanceNotFoundException - この MBean が見つからない場合、または永続ストレージからロードできない場合public void store()
throws MBeanException,
RuntimeOperationsException,
InstanceNotFoundException
この MBean インスタンスの現在の状態を取り込み、永続ストアに書き出します。属性やオペレーションの値が、状態として格納される場合もあります。
このクラスの実装が永続性をサポートしない場合、ServiceNotFoundException をラップする MBeanException がスローされます。
MBean の永続性ポリシーおよび属性記述子を使って、このメソッドの実行を制御します。persistPolicy フィールドが次の内容になっている場合、MBean は格納されます。
!= "never" = "always" = "onTimer" and now > 'lastPersistTime' + 'persistPeriod' = "NoMoreOftenThan" and now > 'lastPersistTime' + 'persistPeriod' = "onUnregister"
persistPolicy フィールドが次の内容になっている場合、MBean は格納されません。
= "never"
= "onUpdate"
= "onTimer" && now < 'lastPersistTime' + 'persistPeriod'
store、インタフェース: PersistentMBeanMBeanException - その他の例外をラップする場合、または永続性がサポートされない場合RuntimeOperationsException - 永続メカニズムからの例外をラップする場合InstanceNotFoundException - 永続ストアが見つからない場合、またはアクセスできない場合public MBeanInfo getMBeanInfo()
getMBeanInfo、インタフェース: DynamicMBeanpublic Object invoke(String opName, Object[] opArgs, String[] sig) throws MBeanException, ReflectionException
呼び出されるメソッドとシグニチャーが RequiredModelMbean からアクセス可能なメソッドのいずれかに一致している場合、このメソッドが呼び出されます。それ以外の場合、管理対象のリソース上で、指定のメソッドの呼び出しが試行されます。
オペレーションによって返される最後の値は、ModelMBeanOperationInfo の記述子内のオペレーション記述子にキャッシュされることがあります。有効な値が存在する場合、value フィールド内に存在します。値がキャッシュされるかどうかは、記述子内の currencyTimeLimit フィールドの値によって決まります。
注:以前のバージョンの仕様との不整合があるため、currencyTimeLimit にはゼロ以下の値を使用しないようにしてください。キャッシュに入った値が有効でないことを示す場合は、currencyTimeLimit フィールドを省略します。この値が常に有効であることを示す場合は、このフィールドに非常に大きい値を指定します。
invoke、インタフェース: DynamicMBeanopName - 呼び出されるメソッドの名前。クラス名を含む完全修飾メソッド名。オペレーション記述子の class フィールドにクラス名が定義されている場合はメソッド名のみ。opArgs - オペレーションの呼び出し時に設定されるパラメータを含む配列。sig - オペレーションのシグニチャーを含む配列。クラスオブジェクトのロードには、オペレーションを呼び出した MBean をロードするときと同じクラスローダーが使用される。MBeanException - 次のいずれかの Exception をラップする:
ServiceNotFoundException:ModelMBeanOperationInfo が存在しない場合、指定のオペレーションの記述子が定義されていない場合、または管理対象のリソースが null の場合。InvalidTargetObjectTypeException:targetType フィールドの値が objectReference でない場合。ReflectionException - メソッドの呼び出し時にスローされる Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする。メソッド名が null の場合。public Object getAttribute(String attrName) throws AttributeNotFoundException, MBeanException, ReflectionException
注:以前のバージョンの仕様との不整合があるため、currencyTimeLimit にはゼロ以下の値を使用しないようにしてください。キャッシュに入った値が有効でないことを示す場合は、currencyTimeLimit フィールドを省略します。この値が常に有効であることを示す場合は、このフィールドに非常に大きい値を指定します。
getMethod フィールドに有効なオペレーション記述子の名前が含まれる場合、このオペレーション記述子によって記述されたメソッドが実行されます。メソッドは、応答として属性値を返します。オペレーションが失敗した場合、または戻り値の型が属性の宣言型と互換性がない場合、例外がスローされます。
getMethod フィールドが定義されていない場合、属性のデフォルト値が返されます。戻り値の型が属性の宣言型と互換性がない場合、例外がスローされます。
属性の宣言型は、MBeanAttributeInfo.getType() により返される String です。次のいずれかが当てはまる場合、値はこの型と互換性があります。
この実装で、getMethod を呼び出す必要がある場合は、呼び出しが正常に行われるように、この getMethod に対してオペレーションを指定する必要があります。これは、メソッドが標準の呼び出しメソッドから呼び出され、operationInfo が必要になるからです。
getAttribute、インタフェース: DynamicMBeanattrName - 取得される属性の名前を指定する String。ModelMBeanAttributeInfo の名前に一致している必要がある。AttributeNotFoundException - 指定の属性が MBean にアクセスできない場合。次の場合、AttributeNotFoundException がスローされる可能性がある。
MBeanException - 次のいずれかの Exception をラップする:
InvalidAttributeValueException:属性の取得メソッドから受け取った値の型が不正な場合、または属性の記述子内に getMethod フィールドが定義されておらず、デフォルト値が存在しない場合。ServiceNotFoundException:属性の取得メソッドに対して ModelMBeanOperationInfo が定義されていない場合、ModelMBeanOperationInfo に記述子が関連付けられていない場合、または管理対象のリソースが null の場合。InvalidTargetObjectTypeException。targetType フィールドの値が objectReference でない場合。ReflectionException - 取得メソッドの呼び出し時にスローされる Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする場合:パラメータ内の属性名は null。setAttribute(javax.management.Attribute)public AttributeList getAttributes(String[] attrNames)
getAttributes、インタフェース: DynamicMBeanattrNames - 取得される属性の名前から成る String 配列。RuntimeOperationsException - IllegalArgumentException をラップする場合:すなわち、パラメータ内のオブジェクト名が null であるか、パラメータ内の属性が null である場合。setAttributes(javax.management.AttributeList)public void setAttribute(Attribute attribute) throws AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException
currencyTimeLimit が > 0 の場合、属性の新しい値が属性記述子の value フィールドにキャッシュされ、lastUpdatedTimeStamp フィールドに現在のタイムスタンプが設定されます。
属性の記述子の永続フィールドが null 以外の場合、永続ストア内に属性を格納するため、属性記述子の Persistance ポリシーが使用されます。
persistPolicy フィールドが次の内容になっている場合、MBean が格納されます。
Model MBean の ModelMBeanInfo はファイルに格納されます。
setAttribute、インタフェース: DynamicMBeanattribute - 設定される属性の名前と設定値を含む Attribute インスタンス。AttributeNotFoundException - 指定の属性が MBean にアクセスできない場合。InvalidAttributeValueException - 指定の属性に記述子が定義されていない場合。MBeanException - 次のいずれかの Exception をラップする:
ServiceNotFoundException。属性の記述子に setMethod フィールドが定義されておらず、管理対象のリソースが null の場合。または setMethod フィールドが定義されておらず、属性でキャッシュが有効になっていない場合。getMethod フィールドも存在しない場合は、キャッシュが自動的に有効になる。InvalidTargetObjectTypeException。targetType フィールドの値が objectReference でない場合。ReflectionException - 設定メソッドの呼び出し時にスローされる Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする場合:パラメータ内の属性名が null の場合getAttribute(java.lang.String)public AttributeList setAttributes(AttributeList attributes)
setAttributes、インタフェース: DynamicMBeanattributes - 属性のリスト。属性のリスト (設定される属性の ID と設定される値)。RuntimeOperationsException - IllegalArgumentException をラップする場合:すなわち、パラメータ内のオブジェクト名が null であるか、パラメータ内の属性が null である場合。getAttributes(java.lang.String[])public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws IllegalArgumentException
addNotificationListener、インタフェース: NotificationBroadcasterlistener - 登録済み MBean が発行した通知を処理するリスナーオブジェクト。filter - フィルタオブジェクト。null の場合、通知処理の前にフィルタは適用されない。handback - 通知が発行されたとき通知とともにリスナーに送信されるコンテキスト。IllegalArgumentException - リスナーは null にできない。removeNotificationListener(javax.management.NotificationListener)public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException
removeNotificationListener、インタフェース: NotificationBroadcasterlistener - 登録済み MBean が発行した通知を処理していたリスナーの名前。このメソッドはこのリスナーに関するすべての情報を削除する。ListenerNotFoundException - リスナーが MBean に登録されていないか、null の場合。addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)public void removeNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
NotificationEmitterこの MBean からリスナーを削除します。MBean は、指定された listener、filter、および handback パラメータと正確に一致するリスナーを持っている必要があります。該当するリスナーが複数存在する場合、そのうちの 1 つだけが削除されます。
削除されるリスナー内で null が指定されている場合、filter および handback パラメータは null になります。
removeNotificationListener、インタフェース: NotificationEmitterlistener - 以前にこの MBean に追加されたリスナー。filter - リスナーの追加時に指定されたフィルタ。handback - リスナーの追加時に指定されたハンドバック。ListenerNotFoundException - リスナーが MBean に登録されていない場合、または指定されたフィルタおよびハンドバックで登録されていない場合。public void sendNotification(Notification ntfyObj) throws MBeanException, RuntimeOperationsException
ModelMBeanNotificationBroadcastersendNotification、インタフェース: ModelMBeanNotificationBroadcasterntfyObj - リスナーオブジェクトの handleNotification メソッドに渡される通知。MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする場合:パラメータとして渡された Notification オブジェクトが null の場合。public void sendNotification(String ntfyText) throws MBeanException, RuntimeOperationsException
ModelMBeanNotificationBroadcastersendNotification、インタフェース: ModelMBeanNotificationBroadcasterntfyText - Notification に指定され、リスナーオブジェクトの handleNotification メソッドに渡されるテキスト。構築される Notification を次に示す。type: "jmx.modelmbean.generic"、source: この ModelMBean インスタンス、sequence : 1MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする場合:パラメータとして渡された Notification テキスト文字列が null の場合。public MBeanNotificationInfo[] getNotificationInfo()
RequiredModelMBean は、2 つの追加通知を送信する場合があります。
"name=GENERIC,descriptorType=notification,log=T,severity=6,displayName=jmx.modelmbean.generic" を持つ通知"name=ATTRIBUTE_CHANGE,descriptorType=notification,log=T,severity=6,displayName=jmx.attribute.change" を持つ標準属性変更通知getNotificationInfo、インタフェース: NotificationBroadcasterpublic void addAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName, Object inhandback) throws MBeanException, RuntimeOperationsException, IllegalArgumentException
ModelMBeanNotificationBroadcasteraddAttributeChangeNotificationListener、インタフェース: ModelMBeanNotificationBroadcasterinlistener - 登録済み MBean が発行した通知を処理するリスナーオブジェクト。inAttributeName - ModelMBean 属性の名前。この属性の変更通知を受信する。null の場合、どの属性が変更されたときも attributeChangeNotification が発行される。inhandback - 通知が発行されたとき通知とともにリスナーに送信されるコンテキスト。MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする。パラメータとして渡される属性名が存在しない場合。IllegalArgumentException - リスナーは null にできない。ModelMBeanNotificationBroadcaster.removeAttributeChangeNotificationListener(javax.management.NotificationListener, java.lang.String)public void removeAttributeChangeNotificationListener(NotificationListener inlistener, String inAttributeName) throws MBeanException, RuntimeOperationsException, ListenerNotFoundException
ModelMBeanNotificationBroadcasterremoveAttributeChangeNotificationListener、インタフェース: ModelMBeanNotificationBroadcasterinlistener - 登録済み MBean が発行した通知を処理していたリスナーの名前。このメソッドはこのリスナーに関するすべての情報を削除する。inAttributeName - 属性。リスナーは、この属性の attributeChangeNotification を受信する必要がなくなった。null の場合、すべての attributeChangeNotification のリスナーが削除される。MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - inAttributeName パラメータが属性名に一致しない場合、IllegalArgumentException をラップする。ListenerNotFoundException - リスナーが MBean に登録されていないか、null の場合。ModelMBeanNotificationBroadcaster.addAttributeChangeNotificationListener(javax.management.NotificationListener, java.lang.String, java.lang.Object)public void sendAttributeChangeNotification(AttributeChangeNotification ntfyObj) throws MBeanException, RuntimeOperationsException
ModelMBeanNotificationBroadcastersendAttributeChangeNotification、インタフェース: ModelMBeanNotificationBroadcasterntfyObj - リスナーオブジェクトの handleNotification メソッドに渡される通知。MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする場合:パラメータとして渡された AttributeChangeNotification オブジェクトが null の場合。public void sendAttributeChangeNotification(Attribute inOldVal, Attribute inNewVal) throws MBeanException, RuntimeOperationsException
ModelMBeanNotificationBroadcastersendAttributeChangeNotification、インタフェース: ModelMBeanNotificationBroadcasterinOldVal - Attribute の初期値inNewVal - Attribute の現在の値
The constructed attributeChangeNotification will be: type "jmx.attribute.change" source this ModelMBean instance sequence 1 attributeName oldValue.getName() attributeType oldValue's class attributeOldValue oldValue.getValue() attributeNewValue newValue.getValue()
MBeanException - 分散通信 Exception をラップする。RuntimeOperationsException - IllegalArgumentException をラップする場合:パラメータとして渡される Attribute オブジェクトが null である場合、またはパラメータに同じ名前の Attribute オブジェクトが複数指定された場合。protected ClassLoaderRepository getClassLoaderRepository()
ClassLoaderRepository を返すため、このメソッドを再定義することができます。public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception
RequireModelMBean が実行時に適切に機能するように、このメソッドをオーバーロードまたはオーバーライドする RequiredModelMBean のサブクラスは、固有の preRegister 実装内の super.preRegister(server, name) を呼び出す必要があります。
preRegister、インタフェース: MBeanRegistrationserver - MBean サーバー。MBean はここに登録される。name - MBean のオブジェクト名。MBeanServer インタフェース内の createMBean または registerMBean メソッドの name パラメータが null の場合、この名前も null になる。この場合、このメソッドは、新しい MBean 用に null 以外の ObjectName を必ず返す。name パラメータが null 以外の場合、通常は値が返されるが、これは必須ではない。Exception - この例外は、MBean サーバーにキャッチされ、MBeanRegistrationException として再スローされる。public void postRegister(Boolean registrationDone)
RequireModelMBean が実行時に適切に機能するように、このメソッドをオーバーロードまたはオーバーライドする RequiredModelMBean のサブクラスは、固有の postRegister 実装内の super.postRegister(registrationDone) を呼び出す必要があります。
postRegister、インタフェース: MBeanRegistrationregistrationDone - MBean が MBean サーバーに正常に登録されたかどうかを示す。登録に失敗した場合の値は false。public void preDeregister()
throws Exception
RequireModelMBean が実行時に適切に機能するように、このメソッドをオーバーロードまたはオーバーライドする RequiredModelMBean のサブクラスは、固有の preDeregister 実装内の super.preDeregister() を呼び出す必要があります。
preDeregister、インタフェース: MBeanRegistrationException - この例外は、MBean サーバーにキャッチされ、MBeanRegistrationException として再スローされる。public void postDeregister()
RequireModelMBean が実行時に適切に機能するように、このメソッドをオーバーロードまたはオーバーライドする RequiredModelMBean のサブクラスは、固有の postDeregister 実装内の super.postDeregister() を呼び出す必要があります。
postDeregister、インタフェース: MBeanRegistration バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.