Sun WBEM SDK 開発ガイド

プロバイダのインストール

プロバイダを作成したら、プロバイダクラスファイルと共有ライブラリファイルの場所を指定し、その後 CIM Object Manager の停止と再起動を行う必要があります。

プロバイダをインストールする方法
  1. 次に示す方法の 1 つを使用して、共有ライブラリファイルの場所を指定します。

    • LD_LIBRARY_PATH 環境変数を、共有ライブラリファイルのある場所に設定します。C シェルを使用している場合の入力例を次に示します。


      注 –

      ある 1 つのシェルで LD_LIBRARY_PATH 環境変数を設定する場合は、設定した新しい値を認識させるために、そのシェルで CIM Object Manager の停止と再起動を行なってください。



      % setenv LD_LIBRARY_PATH /wbem/provider/
      

      Borne シェルを使用している場合の入力例を次に示します。


      % LD_LIBRARY_PATH = /wbem/provider/
      

    • 共有ライブラリファイルを、LD_LIBRARY_PATH 環境変数によって指定されているディレクトリのうちの 1 つにコピーします。WBEM のインストールを行うと、この環境変数は /usr/sadm/lib/wbem/usr/snadm/lib に設定されます。次に入力例を示します。

      % cp libnative.so /usr/sadm/lib/wbem% cp native.c /usr/sadm/lib/wbem
      

  2. プロバイダクラスファイルを、/usr/sadm/lib/wbem に移動します。

    プロバイダクラスファイルをそれらが定義されているパッケージと同じパスに移動します。たとえば、プロバイダが com.sun.providers.myprovider.* としてパッケージされている場合は、プロバイダクラスファイルを /usr/sadm/lib/wbem/com/sun/providers/myprovider/ に移動します。

  3. Solaris プロバイダの CLASSPATH 変数に、プロバイダクラスファイルがあるディレクトリを設定します。これについては、プロバイダの CLASSPATH を設定する方法を参照してください。

  4. 次のコマンドを入力して CIM Object Manager を停止します。


    注 –

    ある 1 つのシェルで LD_LIBRARY_PATH 環境変数を設定する場合は、設定した新しい値を認識させるために、そのシェルで CIM Object Manager の停止と再起動を行なってください。



    # /etc/init.d/init.wbem -stop
    

  5. 次のコマンドを入力して CIM Object Manager を再起動します。


    # /etc/init.d/init.wbem -start
    

Solaris プロバイダの CLASSPATH の設定

Solaris プロバイダの CLASSPATH を設定するには、クライアント API を使って Solaris_ProviderPath クラスのインスタンスを作成し、その pathurl プロパティにプロバイダクラスファイルの場所を設定します。Solaris_ProviderPath クラスは \root\system ネームスペースに格納されています。

プロバイダの CLASSPATH には、プロバイダクラスファイルの場所を設定することもできます。さらに、クラスパスには、jar ファイルや、クラスを含む任意のディレクトリを設定できます。CLASSPATH の設定には、Java が使用する標準の URL を使用します。

プロバイダの CLASSPATH

構文 

ディレクトリへの絶対パス 

file:///a/b/c/

CIM Object Manager が起動された、ディレクトリへの相対パス (/)..

file://a/b/c

プロバイダの CLASSPATH を設定する方法
  1. Solaris_ProviderPath クラスのインスタンスを作成します。以下に例を示します。

    /* root\system (ネームスペースの名前) で初期化されたネームスペース
    オブジェクトをローカルホスト上に作成する  */   
    CIMNameSpace cns = new CIMNameSpace("", "root\system"); 
    
    // root\system ネームスペースに root として接続する
    cc = new CIMClient(cns, "root", "root_password");
    
    // Solaris_ProviderPath クラスを取得する
    cimclass = cc.getClass(new CIMObjectPath("Solaris_ProviderPath");
    
    // Solaris_ProviderPath の新しいインスタンスを作成する
    class ci = cimclass.newInstance();

  2. pathurl プロパティにプロバイダクラスファイルの場所を設定します。以下に例を示します。

    ...
    /*  プロバイダの CLASSPATH に //com/mycomp/myproviders/ を設定する */
    ci.setProperty("pathurl", new CIMValue(new String("//com/mycomp/myproviders/")); 
    ...

  3. インスタンスを更新します。以下に例を示します。

    // 更新されたインスタンスを CIM Object Manager に渡す 
    cc.setInstance(new CIMObjectPath(), ci);