![]() ![]() ![]() ![]() |
MBean 定義ファイル (MDF) は WebLogic MBeanMaker ユーティリティへの入力ファイルです。WebLogic MBeanMaker ユーティリティは、このファイルを使用してカスタム セキュリティ プロバイダを管理するための MBean タイプを作成します。MDF は、単一の MBean タイプを記述する有効な整形式 XML ファイルとしてフォーマットされる必要があります。以下の節では、有効な MDF で使用可能なすべての要素と属性について説明します。
すべての MDF には MBeanType
というルート要素が 1 つ含まれていなければなりません。この要素の構文は次のとおりです。
<MBeanType Name=
string optional_attributes>
subelements
</MBeanType>
MBeanType
要素は、MBean タイプのプログラム上の内部的な名前を指定する Name 属性を含む必要があります (ユーザ インタフェース内に表示される名前を指定するには、DisplayName 属性を使用します)。他の属性は省略可能です。
以下の例は、MBeanType
(ルート) 要素を簡略化して示したものです。
<MBeanType Name="MyMBean" Package="com.mycompany"><MBeanAttribute Name="MyAttr" Type="java.lang.String" Default="Hello World"/>
</MBeanType>
MBeanType
(ルート) 要素内に指定されている属性は、その MBean タイプからインスタンス化されるすべての MBean に適用されます。特定の MBean インスタンスの属性をオーバーライドするには、MBeanAttribute
下位要素で属性を指定する必要があります。詳細については、「MBeanAttribute 下位要素」を参照してください。
表 A-1 では、MBeanType
(ルート) 要素で使用可能な属性について説明します。「JMX 仕様/BEA 拡張機能」カラムは、当該属性が JMX 仕様に対する BEA 拡張機能なのか、それとも JMX の標準属性なのかを示します。なお、BEA 拡張機能は他の Java EE Web サーバ上では動作しない場合があることに注意してください。
|
|||||
|
|||||
|
|||||
MBean タイプ内の属性ごとに、MBeanAttribute
下位要素のインスタンスを 1 つ記述する必要があります。MBeanAttribute
下位要素の形式は次のとおりとします。
<MBeanAttribute Name=
string optional_attributes />
MBeanAttribute
下位要素は、MBean タイプの Java 属性のプログラム上の内部的な名前を指定する Name 属性を含む必要があります (ユーザ インタフェース内に表示される名前を指定するには、DisplayName 属性を使用します)。他の属性は省略可能です。
以下の例は、MBeanType
要素内の MBeanAttribute
下位要素を簡略化して示したものです。
<MBeanType Name="MyMBean" Package="com.mycompany">
<MBeanAttribute Name= "WhenToCache"
Type="java.lang.String"
LegalValues="'cache-on-reference','cache-at-initialization','cache-never'"
Default= "cache-on-reference"
/>
</MBeanType>
MBeanAttribute
下位要素内に指定されている属性は、特定の MBean インスタンスに適用されます。ある MBean タイプからインスタンス化されるすべての MBean の属性を設定するには、MBeanType
(ルート) 要素内に属性を指定する必要があります。詳細については、「MBeanType (ルート) 要素」を参照してください。
表 A-2 では、MBeanAttribute
下位要素で使用可能な属性について説明します。「JMX 仕様/BEA 拡張機能」カラムは、当該属性が JMX 仕様に対する BEA 拡張機能なのかどうかを示します。なお、BEA 拡張機能は他の Java EE Web サーバ上では動作しない場合があることに注意してください。
MBeanAttribute 下位要素からゲッター メソッドまたはキャッシュ済みの値が提供されない場合に返すべき値。文字列は、この属性に指定されたデータ型と互換性を持つ型のオブジェクトに評価しなければならない Java 式を表す。
null と見なされる。この想定値を使用し、かつ LegalNull 属性を false に設定してある場合には、WebLogic MBeanMaker と WebLogic Server から例外が送出される。
|
|||||
|
|||||
|
|||||
MBeanConstructor
下位要素は現在のところ、WebLogic MBeanMaker では使用されておらず、Java Management eXtensions 1.0 仕様に準拠し、上位互換性を保つためにサポートされているだけです。したがって、ここでは、MBeanConstructor
下位要素 (およびそれに関連する MBeanConstructorArg
下位要素) の属性の詳細については説明を省略します。
MBean タイプでサポートされている操作 (メソッド) ごとに、MBeanOperation
下位要素のインスタンスを 1 つ記述する必要があります。MBeanOperation
の形式は次のとおりとします。
<MBeanOperation Name=
string optional_attributes >
=string optional_attributes
<MBeanOperationArg Name/>
</MBeanOperation>
MBeanOperation
下位要素は、その操作のプログラム上の内部的な名前を指定する Name 属性を含む必要があります (ユーザ インタフェース内に表示される名前を指定するには、DisplayName 属性を使用します)。他の属性は省略可能です。
MBeanOperation
要素内には、その操作 (メソッド) で使用される引数ごとに MBeanOperationArg
下位要素のインスタンスを 1 つ記述する必要があります。MBeanOperationArg
の形式は次のとおりとします。
<MBeanOperationArg Name=
string
optional_attributes />
Name
属性には操作の名前を指定する必要があります。MBeanOperationArg
のオプション属性は Type
だけで、これは、特定タイプの Java 属性の動作を指定する Java クラス名を与えるものです。この属性を指定しない場合、値は java.lang.String
と見なされます。
次の例は、MBeanType
要素内の MBeanOperation
下位要素と MBeanOperationArg
下位要素を簡略化して示したものです。
<MBeanType Name="MyMBean" Package="com.mycompany">
<MBeanOperation
Name= "findParserSelectMBeanByKey"
ReturnType="XMLParserSelectRegistryEntryMBean"
Description="Given a public ID, system ID, or root element tag, returns the object name of the corresponding XMLParserSelectRegistryEntryMBean."
>
<MBeanOperationArg Name="publicID" Type="java.lang.String"/>
<MBeanOperationArg Name="systemID" Type="java.lang.String"/>
<MBeanOperationArg Name="rootTag" Type="java.lang.String"/>
</MBeanOperation>
</MBeanType>
表 A-3 では、MBeanOperation
下位要素で使用可能な属性について説明します。「JMX 仕様/BEA 拡張機能」カラムは、当該属性が JMX 仕様に対する BEA 拡張機能なのかどうかを示します。なお、BEA 拡張機能は他の Java EE Web サーバ上では動作しない場合があることに注意してください。
|
|||||
表 A-4 では、MBeanOperationArg
下位要素で使用可能な属性について説明します。「JMX 仕様/BEA 拡張機能」カラムは、当該属性が JMX 仕様に対する BEA 拡張機能なのかどうかを示します。なお、BEA 拡張機能は他の Java EE Web サーバ上では動作しない場合があることに注意してください。
MBean 定義ファイル (MDF) は、JDK 例外の型または weblogic.management.utils
例外の型のみを使用する必要があります。コード リスト A-1 で示したコードの一部を次に示します。ここでは、MBeanOperation
下位要素内で MBeanException
が使用されています。
<MBeanOperation
Name = "registerPredicate"
ReturnType = "void"
Description = "Registers a new predicate with the specified class name."
>
<MBeanOperationArg
Name = "predicateClassName"
Type = "java.lang.String"
Description = "The name of the Java class that implements the predicate."
/>
<MBeanException>weblogic.management.utils.InvalidPredicateException</MBeanException>
<MBeanException>weblogic.management.utils.AlreadyExistsException</MBeanException>
</MBeanOperation>
コード リスト A-1 と コード リスト A-2 に、この付録で説明した属性の多くを使用した MBean 定義ファイル (MDF) の例を示します。コード リスト A-1 には、述語を管理し、述語とそれらの引数に関するデータを読み取る MBean タイプを生成するための MDF を示します。コード リスト A-2 には、WebLogic (デフォルト) 認証プロバイダの MBean タイプを生成するための MDF を示します。
<?xml version="1.0" ?>
<!DOCTYPE MBeanType SYSTEM "commo.dtd">
<MBeanType
Name = "PredicateEditor"
Package = "weblogic.security.providers.authorization"
Implements = "weblogic.security.providers.authorization.PredicateReader"
PersistPolicy = "OnUpdate"
Abstract = "false"
Description = "This MBean manages predicates and reads data about predicates and their arguments.<p>"
>
<MBeanOperation
Name = "registerPredicate"
ReturnType = "void"
Description = "Registers a new predicate with the specified class name."
>
<MBeanOperationArg
Name = "predicateClassName"
Type = "java.lang.String"
Description = "The name of the Java class that implements the predicate."
/>
<MBeanException>weblogic.management.utils.InvalidPredicateException</MBeanException>
<MBeanException>weblogic.management.utils.AlreadyExistsException</MBeanException>
</MBeanOperation>
<MBeanOperation
Name = "unregisterPredicate"
ReturnType = "void"
Description = "Unregisters the currently registered predicate." >
<MBeanOperationArg
Name = "predicateClassName"
Type = "java.lang.String"
Description = "The name of the Java class that implements predicate to be unregistered."
/>
<MBeanException>weblogic.management.utils.NotFoundException</MBeanException>
</MBeanOperation>
</MBeanType>
<?xml version="1.0" ?>
<!DOCTYPE MBeanType SYSTEM "commo.dtd">
<MBeanType
Name = "DefaultAuthorizer"
DisplayName = "DefaultAuthorizer"
Package = "weblogic.security.providers.authorization"
Extends ="weblogic.management.security.authorization.DeployableAuthorizer" Implements = "weblogic.management.security.authorization.PolicyEditor, weblogic.security.providers.authorization.PredicateEditor"
PersistPolicy = "OnUpdate"
Description = "This MBean represents configuration attributes for the WebLogic Authorization provider.<p>"
>
<MBeanAttribute
Name = "ProviderClassName"
Type = "java.lang.String"
Writeable = "false"
Default""weblogic.security.providers.authorization.DefaultAuthorizationProviderImpl""
Description = "The name of the Java class used to load the WebLogic Authorization provider."
/>
<MBeanAttribute
Name = "Description"
Type = "java.lang.String"
Writeable = "false"
Default = ""Weblogic Default Authorization Provider"" Description = "A short description of the WebLogic Authorization provider." />
<MBeanAttribute
Name = "Version"
Type = "java.lang.String"
Writeable = "false"
Default = ""1.0""
Description = "The version of the WebLogic Authorization provider."
/>
</MBeanType>
![]() ![]() ![]() |