Sun WBEM SDK 開発ガイド

例外の処理

各インタフェースには、CIM の例外を定義する throws 節が含まれます。例外とは、エラー状態を意味します。CIM Object Manager は、Java の例外処理を使用して WBEM 固有の例外の階層を作成します。CIMException クラスは、CIM 例外の基底クラスです。CIMException 以外の CIM 例外クラスは、CIMException クラスのサブクラスです。

CIM 例外の各クラスは、API コードが処理する特定のエラー状態を定義します。CIM 例外 の API については、表 3–2 を参照してください。

Try / Catch 節の使用

クライアント API は、標準 Java の try/catch 節を使用して例外を処理します。一般にアプリケーションは、例外をキャッチした後、何らかの修正アクションを実行するか、あるいはエラー情報をユーザーに渡します。

CIM 仕様では、CIM の規則は明白に定義されていません。CIM の規則は、通常、例によって暗黙に示されます。ほとんどの場合、エラーコードによって示されるのは一般的な問題 (データ型の不一致など) です。プログラマは、その問題に対して具体的な処置を行う必要があります (この場合、正しいデータ型を決定)。

構文上のエラーと意味上のエラー

MOF コンパイラ (mofcomp) は、.mof テキストファイルを Java クラス (bytecode) にコンパイルします。MOF コンパイラは、MOF ファイルの構文検査を行います。 CIM Object Manager は、各種のアプリケーションからアクセスできるので、構文と意味の両方の検査を行います。

例 4–19 の MOF ファイルは、2 つのクラス、A と B を定義します。このサンプルファイルをコンパイルすると、CIM Object Manager は意味上のエラーを返します。これは、キーをオーバーライドできるのは別のキーだけであるためです


例 4–19 意味上のエラーの検査

Class A         \\クラス A を定義
 
{     [Key]
int a;  
}  
 
Class B:A       \\Class B はクラス A のサブクラス 
 
{  [overrides ("c", key (false) ]
int b;   
}