Sun Java ロゴ     前へ      目次      索引      次へ     

Sun ロゴ
Sun Java System Message Queue 3 2005Q1 管理ガイド 

第 8 章
管理対象オブジェクトの管理

管理対象オブジェクトを使用すると、ほかの JMS プロバイダへの移植が可能なクライアントアプリケーションを開発できます。管理対象オブジェクトは、プロバイダ固有の設定およびネーミング情報をカプセル化します。

Message Queue の管理者は、通常、クライアントアプリケーションがブローカコネクションの取得に使用するための管理対象オブジェクトを作成します。クライアントアプリケーションは、コネクションを使用して物理的送信先とメッセージの送受信を行います。

この章では、オブジェクトマネージャユーティリティ (imqobjmgr) を使用して、これらのタスクを実行する方法について説明します。これらのタスクを実行するには、使用するオブジェクトストアと作成する管理対象オブジェクトの両方の属性を理解する必要があるため、この章では、imqobjmgr を使用して管理対象オブジェクトを管理する方法を説明する前に、この 2 つのトピックの背景について説明します。

この章では、次の節について説明します。


オブジェクトストアについて

管理対象オブジェクトは、即時に使用可能なオブジェクトストアに配置されます。クライアントアプリケーションは JNDI 検索を行うときに、このオブジェクトストアに配置された管理対象オブジェクトにアクセスします。標準 LDAP ディレクトリサーバーまたはファイルシステムのオブジェクトストアの 2 種類のオブジェクトストアが使用できます。

LDAP サーバーオブジェクトストア

LDAP サーバーは、運用メッセージングシステム用のオブジェクトストアとしてお勧めします。LDAP 実装は、多数のベンダーでサポートされており、分散システムでの使用を考慮した設計になっています。LDAP サーバーは、本稼動環境で役立つセキュリティ機能も備えています。

Message Queue 管理ツールは、LDAP サーバー上のオブジェクトストアを管理できます。ただし、はじめに LDAP サーバーのマニュアルに記載されているとおり、java オブジェクトを格納し JNDI 検索を実行するように LDAP サーバーを設定する必要があります。

また、LDAP サーバーをオブジェクトストアとして使用している場合は、表 8-1 に示す属性を指定する必要があります。これらの属性は、次のように分類されます。

ファイルシステムオブジェクトストア

Message Queue は、ファイルシステムのオブジェクトストア実装もサポートしています。ファイルシステムのオブジェクトストアは、まだ十分なテストが行われていないため、運用システムでの使用はお勧めしませんが、開発環境で使いやすいという利点があります。LDAP サーバーをセットアップする必要はなく、ローカルのファイルシステム上にディレクトリを作成するだけで利用できます。

ただし、クライアントが複数のコンピュータノードにまたがって配備されている場合は、これらのクライアントがオブジェクトストアの常駐するディレクトリに対してアクセス権を持つときにだけ、ファイルシステムストアを集中オブジェクトストアとして使用できます。さらに、このディレクトリにアクセス可能なユーザーは、Message Queue の管理ツールを使用して、管理対象オブジェクトを作成および管理することができます。

ファイルシステムオブジェクトストアを使用している場合は、表 8-2 に示す属性を指定する必要があります。これらの属性は、次のように分類されます。


管理対象オブジェクトの属性について

Message Queue の管理対象オブジェクトには 2 つの基本的な種類があります。

Message Queue は、管理対象オブジェクトを作成したり管理したりするための 2 つの管理ツールを提供しています。コマンド行オブジェクトマネージャユーティリティ (imqobjmgr) と GUI 管理コンソールです。この章では、コマンド行の使い方についてのみ説明します。

管理対象オブジェクトの属性は、属性と値の組み合わせで指定します。

コネクションファクトリの属性

コネクションファクトリの設定は、クライアントアプリケーションに代わってコネクションファクトリが作成したすべてのコネクションに渡されます。コネクションでは、メッセージの送受信に関連したパーティの定義、クライアントランタイムによるメッセージフローの処理方法、コネクションを介して送信されるすべてのメッセージに対する特定の情報の自動設定が設定されます。

コネクションファクトリオブジェクトには 2 つのタイプがあります。

ConnectionFactory オブジェクトと XAConnectionFactory オブジェクトは、一連の同じ属性値を共有します。

コネクションファクトリオブジェクトは、管理者またはアプリケーション (プロトタイプまたはテストの場合) が作成および設定できます。コネクションファクトリの属性は、imqobjmgr ツールまたは管理コンソールを使用して設定します。

この節では、以降の節で記述するコネクションファクトリの属性を説明します。以降の節は属性により影響を受ける動作別に書かれています。

主に使用する属性は、imqAddressList です。この属性を使用して、クライアントがコネクションを確立するブローカを指定します。「コネクションファクトリの追加」に、コネクションファクトリ管理対象オブジェクトをオブジェクトストアに追加する際に、属性を指定する方法を説明しています。

コネクションファクトリの属性の詳細は、第 16 章「管理対象オブジェクト属性のリファレンス」を参照してください。また Message Queue のクラスの com.sun.messaging.ConnectionConfiguration については JavaDoc API のマニュアルを参照してください。

コネクションの処理

コネクション処理の属性は、接続が必要なメッセージサーバーアドレスの指定、および再接続が必要な場合、再接続を試行する回数と間隔を指定する場合に使用します。

クライアントは、imqAddressList 属性の値として指定するメッセージサーバーアドレスで、メッセージサーバーに接続します。メッセージサーバーアドレスには、ブローカホスト名、ポート番号、コネクションサービスタイプが含まれています。

ポート番号は、ブローカのポートマッパーが常駐するポートか、特定のコネクションサービスが常駐するポートになります。ポートマッパーのポートを指定する場合、ポートマッパーはコネクションのポート番号を動的に割り当てます。メッセージサーバーアドレスの指定の詳細は、「imqAddressList 属性値の構文」を参照してください。

自動再接続

シングルブローカ環境またはマルチブローカクラスタ環境では、コネクションが失敗したときにクライアントが自動的にブローカに再接続するコネクション処理の属性を設定します。また再接続プロセスも設定できます。

再接続機能は、コネクションのフェイルオーバーを扱いますが、データのフェイルオーバーは実行しません。障害の発生したブローカまたは切断されたブローカが保持する持続メッセージ、その他の状態情報は、クライアントが別のブローカインスタンスに再接続すると損なわれます。

自動再接続が有効に設定されている場合、Message Queue はコネクションが失敗した場合に一時的送信先を維持します。これはクライアントが再び接続し、アクセスする場合があるためです。クライアントに割り当てられた一時的送信先を使用して再接続する時間が経過すると、ブローカは一時的送信先を削除します。

再接続を処理する方法は、クライアントがシングルブローカに接続するのか、クラスタ内の 1 つのブローカに接続するかにより異なります。次の節では、この 2 つの可能性について説明します。

シングルブローカへの再接続     コネクションに失敗したとき、クライアントが自動的にブローカに再接続するように設定するには、次のコネクションファクトリ属性を設定します。

これらの属性の詳細は、「コネクションの処理」を参照してください。

クラスタ内のブローカへの再接続     マルチブローカクラスタ環境では、imqAddressList 属性に複数のアドレスを指定している場合、リスト内の各ブローカについて自動再接続が反復されます。リスト内のすべてのブローカに、Message Queue Enterprise Edition がインストールされている必要があります。

リスト内の最初のアドレスに対するクライアントのコネクションに失敗すると、クライアントランタイムはリストの別のブローカへのクライアントの再接続を試みます。その試行が失敗した場合、クライアントランタイムは、クライアントに再接続できるようになるまで、リスト内で再接続を繰り返します。

どの再接続も失敗する場合、クライアントランタイムは利用可能なブローカが見つかるまで、または利用可能なブローカの検出に失敗するまで、リスト内を指定された回数だけ循環します。imqAddressListBehavior 属性の設定により、再接続に選択されたブローカがアドレスリスト内のアドレス順の次に位置するか、そのリストからランダムに選択されたブローカであるか決定します。

クライアントのクラスタ内のブローカへの再接続を有効にするには、次の属性を使用します。

これらの属性の詳細は、「コネクションの処理」を参照してください。

ping コネクション

imqPingInterval 属性は、クライアントランタイムからブローカに対する ping 操作の周期を指定します。コネクションを定期的にテストすることで、クライアントランタイムは障害の発生したコネクションを事前に検出することができます。ping 操作が失敗すると、クライアントランタイムはクライアントアプリケーションの例外リスナーオブジェクトに例外をスローします。アプリケーションに例外リスナーが存在しない場合、アプリケーションが次にコネクションを使用する試みも失敗します。

ping の使用は、メッセージの受信を待機し、メッセージを送信しないコンシューマクライアントアプリケーションに特に重要です。このようなアプリケーションは、この方法以外に、コネクションの失敗を認識する手段がありません。メッセージを時々生成するクライアントにとっても、この機能は有益です。メッセージを送信する前に、障害の発生したコネクションを処理できるためです。

デフォルトでは、ping 間隔は 30 秒に設定されます。-1 の値により ping 操作が無効になります。

破損したコネクションへの応答は、オペレーティングシステムにより異なります。たとえば、一部のオペレーティングシステムでは、ping から障害が迅速に報告されます。また、ブローカへのコネクションの確立を試行し続け、ping が成功するかバッファがオーバーフローになるまで、一連の ping をバッファリングするオペレーティングシステムもあります。

imqPingInterval 属性の詳細は、「コネクションの処理」を参照してください。

クライアントの識別

メッセージキューは、クライアント認証と、永続サブスクライバに必要な固有のクライアント ID の設定をサポートする、一連のコネクションファクトリ属性を定義します。

ブローカへの接続を試みるクライアントには、認証が必要です。クライアントがコネクションの作成時にユーザー名またはパスワードを指定しない場合、次のいずれかが起こります。

このスキーマにより、どのユーザーもコネクションを確立できます。これは開発とテストに好都合です。運用システムでは、コネクションへのアクセスがユーザーリポジトリに追加されたユーザーに制限されます。

コネクションを要求するクライアントのブローカ認証以外に、JMS 仕様では、クライアントに対して状態を維持する必要がある場合に、コネクションが固有のクライアント識別子を割り当てる必要があります。Message Queue はクライアント ID を使用して、その永続サブスクライバを追跡します。永続サブスクライバが停止すると、ブローカはそのサブスクライバのメッセージを保持し、サブスクライバが再びアクティブになった場合にメッセージを配信します。ブローカはクライアント ID を使用して、サブスクライバを識別します。

ClientID は管理者として設定できます。またはクライアントがプログラムで設定することもできます。複数のクライアントが同じコネクションファクトリオブジェクトからコネクションを取得する場合、コネクションファクトリに ClientID を設定します。Message Queue はそのファクトリから取得した各コネクションに対して、固有の ClientID を指定します。

ClientID 値が確実に固有の値になるためには、次の形式を使用して imqConfiguredClientID 属性を設定します。

imqConfiguredClientID=${u}string

属性値の先頭の 4 文字は必ず ${u} になります。「u」以外の文字が見つかると、コネクションの作成時に JMS 例外が発生します。

string の値は Xconn など、このコネクションファクトリで生成されるコネクションに関連付けられる任意の値です。ユーザー認証の段階では、Message Queue は u:userNameu に置き換えます。たとえば、コネクションに関連付けられたユーザーが Athena、コネクションに指定された文字列が ${u}Xconn であれば、ClientID は u:AthenaXconn になります。

このスキーマにより、ほかの方法でも同様ですが、コネクションファクトリにより生成された各コネクションには固有の ClientID が格納されます。

このスキーマが機能しないケースがあります。2 つのクライアントが guest などのデフォルトのユーザー名を使用してコネクションを取得する場合、各クライアントは同じ ${u} コンポーネントを含む ClientID を保有します。実行時に、最初にコネクションを要求するクライアントがコネクションを取得し、2 番目にコネクションを要求するクライアントはコネクションを取得できません。これは Message Queue が固有ではない ClientID を使用してコネクションを作成できないためです。

imqDisableSetClientID 属性を設定して、コネクションファクトリを使用するクライアントが、設定済みのクライアント ID をプログラムで変更するのを禁止できます。

アプリケーションコードが setClientId() メソッドを使用していなければ、永続サブスクリプションに imqConfiguredClientID 属性を設定する必要があります。

クライアント識別に影響する属性を、次のようにまとめています。

これらの属性の詳細は、「クライアントの識別」を参照してください。

信頼性およびフロー制御

クライアントによって送受信されるメッセージと Message Queue が使用する制御メッセージは、同じクライアントとブローカ間のコネクションを使って伝送されます。その結果、ブローカ通知など、制御メッセージの配信時に、JMS メッセージの配信により制御メッセージが保留になると遅延が起こります。

制御メッセージのフローを、クライアントメッセージのフローを基準に管理できる、コネクションファクトリ属性を設定できます。2 種類のメッセージのフローを制御する場合、信頼性とスループットとの妥協が起こります。これらの属性を使用してフロー制御と信頼性を管理する方法の詳細は、「クライアントランタイムのメッセージフローの調整」を参照してください。

次の属性は、クライアントのメッセージと制御メッセージのフローに影響します。

これらの属性の詳細は、「信頼性およびフロー制御」を参照してください。

キューブラウザの動作とサーバーセッション

次の属性はクライアントキューのブラウズに影響します。

これらの属性の詳細は、「キューブラウザの動作とサーバーセッション」を参照してください。

JMS の定義済みプロパティのサポート

コネクションファクトリ属性を使用して、コネクションが生成するメッセージに、JMS の定義済みプロパティを自動的に設定できます。JMS プロパティは、http://java.sun.com/products/jms/docs.html の JMS 仕様で定義されています。

次の属性を使用して、JMS の定義済みプロパティを設定します。

これらの属性の詳細は、「JMS の定義済みプロパティのサポート」を参照してください。

メッセージヘッダーのオーバーライド

コネクションファクトリの属性を設定すると、持続性、生存期間、メッセージの優先順位を指定する JMS メッセージヘッダーのフィールドをオーバーライドできます。この設定は、コネクションファクトリから取得したコネクションが生成するすべてのメッセージに使用されます。

次の JMS フィールドの値はオーバーライドできます。

これらのフィールドの詳細は、http://java.sun.com/products/jms/docs.html の JMS 仕様を参照してください。

メッセージのヘッダーをオーバーライドすると、アプリケーション要件を侵害する場合があるため、この機能はアプリケーションユーザーまたはデザイナーに応じて使用してください。

次のリストは、メッセージのオーバーライドを扱うコネクションファクトリの属性を示したものです。ほとんどの属性は組になっています。各組み合わせについて、最初の属性は指定されたヘッダーフィールドをオーバーライドできるかどうかを指定し、2 番目の属性がオーバーライドの値を指定します。

これらの属性の詳細は、「メッセージヘッダーのオーバーライド」を参照してください。

送信先管理対象オブジェクトの属性

物理的なトピックやキューの送信先を指定する、送信先管理対象オブジェクトには、表 16-1 に示すような属性があります。「トピックまたはキューの追加」では、送信先管理対象オブジェクトをオブジェクトストアに追加する場合に、これらの属性を指定する方法について説明します。

主に使用する属性は、imqDestinationName です。これは、トピックまたはキューの管理対象オブジェクトに対応する物理的送信先に割り当てる名前です。複数のアプリケーションをサポートするために作成するほかの送信先と区別するために、送信先の説明を指定することもできます。

詳細は、Message Queue クラスの com.sun.messaging.DestinationConfiguration に関する JavaDoc API ドキュメントを参照してください。


オブジェクトマネージャユーティリティ (imqobjmgr) の使用

オブジェクトマネージャユーティリティを使用すると、Message Queue の管理対象オブジェクトを作成および管理することができます。このユーティリティの使用により、次の作業が実行できます。

imqobjmgr コマンドの構文、サブコマンド、オプションの詳細は、第 13 章「コマンドのリファレンス」を参照してください。次の節では、imqobjmgr のサブコマンドを操作する場合に指定する必要のある情報を説明します。

必要な情報

管理対象オブジェクトに関連する大部分のタスクを実行する場合は、imqobjmgr のサブコマンドのオプションとして、次の情報を指定する必要があります。

コマンドファイルの使用

imqobjmgr コマンドを使用すると、imqobjmgr サブコマンド句のすべてまたは一部を表すために java プロパティファイルの構文を使用する、コマンドファイルの名前を指定できます。

オブジェクトマネージャユーティリティ (imqobjmgr) と一緒にコマンドファイルを使用すると、オブジェクトストアの属性を指定する場合に特に便利です。なぜなら、オブジェクトストアの属性は複数の imqobjmgr の呼び出しにおいて、同じ内容になる可能性が高く、通常多くの入力作業が必要になるためです。また、コマンドファイルを使用すると、コマンド行で許可されている最大文字数を超えて入力してしまうのを防ぐことができます。

imqobjmgr コマンドファイルの一般的な構文は、次のとおりです (バージョンプロパティは Message Queue 製品ではなくコマンドファイルのバージョンを示す。これはコマンド行オプションではなく、値は常に 2.0 に設定される)。

    version=2.0

    cmdtype=[ add | delete | list | query | update ]

    obj.type=[ q | t | qf | tf | cf | xqf | xtf | xcf | e ]

    obj.lookupName=lookup name

    obj.attrs.objAttrName1=value1

    obj.attrs.objAttrName2=value2

    obj.attrs.objAttrNameN=valueN

    ...

    objstore.attrs.objStoreAttrName1=value1

    objstore.attrs.objStoreAttrName2=value2

    objstore.attrs.objStoreAttrNameN=valueN

    ...

コマンドファイルを使用する方法の例として、次の imqobjmgr コマンドを検討してください。

imqobjmgr add

       -t qf

       -l "cn=myQCF"

       -o "imqAddressList=mq://foo:777/jms"

       -j "java.naming.factory.initial=

                com.sun.jndi.ldap.LdapCtxFactory"

       -j "java.naming.provider.url=

                ldap://mydomain.com:389/o=imq"

       -j "java.naming.security.principal=

                uid=fooUser, ou=People, o=imq"

       -j "java.naming.security.credentials=fooPasswd"

       -j "java.naming.security.authentication=simple"

このコマンドは、次の内容を含む MyCmdFile などのファイルにカプセル化することができます。

    version=2.0

    cmdtype=add

    obj.type=qf

    obj.lookupName=cn=myQCF

    obj.attrs.imqAddressList=mq://foo:777/jms

    objstore.attrs.java.naming.factory.initial=¥

                 com.sun.jndi.ldap.LdapCtxFactory

    objstore.attrs.java.naming.provider.url=¥

                 ldap://mydomain.com:389/o=imq

      objstore.attrs.java.naming.security.principal=¥

                 uid=fooUser, ou=People, o=imq

      objstore.attrs.java.naming.security.credentials=fooPasswd

      objstore.attrs.java.naming.security.authentication=simple

次に、-i オプションを使用して、このファイルをオブジェクトマネージャユーティリティ (imqobjmgr) に渡すことができます。

コマンドファイルを使用して一部のオプションを指定する一方で、コマンド行を使用してその他のオプションを指定することも可能です。このため、ユーティリティの複数の呼び出しで、同じ内容になるサブコマンド句の一部を、コマンドファイルを使用して指定することができます。たとえば、次のコマンドでは、コネクションファクトリ管理対象オブジェクトを追加する場合に必要なすべてのオプション (ただし、管理対象オブジェクトの保存場所を指定するオプションは除く) が指定されています。

imqobjmgr add

       -t qf

      -l "cn=myQCF"

      -o "imqAddressList=mq://foo:777/jms"

       -i MyCmdFile

この場合、MyCmdFile ファイルには次の定義が含まれます。

    version=2.0

    objstore.attrs.java.naming.factory.initial=¥

                 com.sun.jndi.ldap.LdapCtxFactory

    objstore.attrs.java.naming.provider.url=¥

                 ldap://mydomain.com:389/o=imq

      objstore.attrs.java.naming.security.principal=¥

                 uid=fooUser, ou=People, o=imq

      objstore.attrs.java.naming.security.credentials=fooPasswd

      objstore.attrs.java.naming.security.authentication=simple

コマンドファイルの別の例は、次の場所で参照できます。


管理対象オブジェクトの追加および削除

この節では、コネクションファクトリおよびトピックまたはキューの送信先管理対象オブジェクトをオブジェクトストアに追加する方法について説明します。


オブジェクトマネージャユーティリティ (imqobjmgr) は、Message Queue 管理対象オブジェクトだけを一覧表示します。オブジェクトストアに、追加したい管理対象オブジェクトと同じ検索名の Message Queue 以外のオブジェクトが含まれている場合は、追加操作を実行するとエラーが表示されます。


コネクションファクトリの追加

クライアントアプリケーションがブローカへのコネクションを取得できるようにするには、クライアントアプリケーションに必要なコネクションタイプを表している管理対象オブジェクトを追加します。このタイプは、トピックコネクションファクトリかキューコネクションファクトリのどちらかになります。

キューのコネクションファクトリを追加するには、次のようなコマンドを使用します。

imqobjmgr add

    -t qf

    -l "cn=myQCF"

    -o "imqAddressList=mq://myHost:7272/jms"

    -j "java.naming.factoryinitial=

                 com.sun.jndi.ldap.LdapCtxFactory"

    -j "java.naming.provider.url=ldap://mydomain.com:389/o=imq"

    -j "java.naming.security.principal=

             uid=fooUser, ou=People, o=imq"

    -j "java.naming.security.credentials=fooPasswd"

    -j "java.naming.security.authentication=simple"

先行するコマンドは、検索名が cn=myQCF であり、myHost 上で実行するブローカに接続する管理対象オブジェクトを作成し、ポート 7272 で待機します。この管理対象オブジェクトは、LDAP サーバーに格納されます。引数としてコマンドファイルを imqobjmgr コマンドに指定すると、同じことを実行できます。詳細は、「コマンドファイルの使用」を参照してください。


命名規則: LDAP サーバーを使用して、管理対象オブジェクトを格納する場合、前述の例のように、接頭辞「cn=」が付いた検索名 (cn=myQCF) を割り当てることが重要です。検索名は、-l オプションを使用して指定します。ファイルシステムオブジェクトストアを使用している場合は、cn 接頭辞を使用する必要はありません。ただし、「/」を含む検索名は使用しないでください。表 8-3 を参照してください。


表 8-3 命名規則の例

オブジェクトストアのタイプ

適した名前

使用が禁止されている名前

LDAP サーバー

cn=myQCF

myQCF

ファイルシステム

myTopic

myObjects/myTopic

トピックまたはキューの追加

クライアントアプリケーションがブローカ上の物理的送信先にアクセスできるようにするには、これらの送信先を指定する管理対象オブジェクトをオブジェクトストアに追加します。

該当する管理対象オブジェクトをオブジェクトストアに追加する前に、物理的送信先を作成しておくことをお勧めします。コマンドユーティリティ (imqcmd) を使用して、オブジェクトストア内の送信先管理対象オブジェクトによって識別される、ブローカの物理的送信先を作成してください。物理的送信先の作成方法については、「コネクション情報の入手」を参照してください。

次のコマンドでは、検索名が myTopic で、物理的送信先名が TestTopic のトピックの送信先を識別する管理対象オブジェクトが追加されます。この管理対象オブジェクトは、LDAP サーバーに格納されます。

    imqobjmgr add

    -t t

    -l "cn=myTopic"

    -o "imqDestinationName=TestTopic"

    -j "java.naming.factory.initial=

                 com.sun.jndi.ldap.LdapCtxFactory"

    -j "java.naming.provider.url=

                 ldap://mydomain.com:389/o=imq"

    -j "java.naming.security.principal=

                 uid=fooUser, ou=People, o=imq"

    -j "java.naming.security.credentials=fooPasswd"

    -j "java.naming.security.authentication=simple"

次は同じコマンドです。ただし、管理対象オブジェクトが Solaris のファイルシステムに格納されるという点が異なります。

imqobjmgr add

      -t t

      -l "cn=myTopic"

      -o "imqDestinationName=TestTopic"

      -j "java.naming.factory.initial=

                 com.sun.jndi.fscontext.RefFSContextFactory"

      -j "java.naming.provider.url=

                 file:///home/foo/imq_admin_objects"

たとえば、LDAP サーバーの場合、MyCmdFile というコマンドファイルを使用して、サブコマンド句を指定できます。ファイルには、次のテキストが含まれます。

    version=2.0

    cmdtype=add

    obj.type=t

    obj.lookupName=cn=myTopic

    obj.attrs.imqDestinationName=TestTopic

    objstore.attrs.java.naming.factory.initial=

                com.sun.jndi.fscontext.RefFSContextFactory

    objstore.attrs.java.naming.provider.url=

                file:///home/foo/imq_admin_objects

      objstore.attrs.java.naming.security.principal=

                uid=fooUser, ou=People, o=imq

      objstore.attrs.java.naming.security.credentials=fooPasswd

      objstore.attrs.java.naming.security.authentication=simple

ファイルを imqobjmgr コマンドに渡す場合は、-i オプションを使用します。

キューオブジェクトを追加する場合は、-t オプションに q を指定することを除いて、まったく同じコマンドを使用します。

管理対象オブジェクトの削除

管理対象オブジェクトを削除するには、delete サブコマンドを使用します。オブジェクトの検索名、タイプ、および場所を指定する必要があります。

次のコマンドでは、検索名が cn=myTopic で、LDAP サーバーに格納される、トピックの管理対象オブジェクトが削除されます。

imqobjmgr delete

    -t t

    -l "cn=myTopic"

    -j "java.naming.factory.initial=

                com.sun.jndi.ldap.LdapCtxFactory"

    -j "java.naming.provider.url=

                ldap://mydomain.com:389/o=imq"

    -j "java.naming.security.principal=

                uid=fooUser, ou=People, o=imq"

    -j "java.naming.security.credentials=fooPasswd"

    -j "java.naming.security.authentication=simple"


管理対象オブジェクトの一覧表示

すべての管理対象オブジェクト、または特定タイプのすべての管理対象オブジェクトを一覧表示するには、list サブコマンドを使用します。次のサンプルコードでは、管理対象オブジェクトが LDAP サーバーに格納されることを前提としています。

次のコマンドでは、すべてのオブジェクトが一覧表示されます。

imqobjmgr list

    -j "java.naming.factory.initial=

                com.sun.jndi.ldap.LdapCtxFactory"

    -j "java.naming.provider.url=

                ldap://mydomain.com:389/o=imq"

    -j "java.naming.security.principal=

                uid=fooUser, ou=People, o=imq"

    -j "java.naming.security.credentials=fooPasswd"

    -j "java.naming.security.authentication=simple"

次のコマンドでは、queue タイプのすべてのオブジェクトが一覧表示されます。

imqobjmgr list

    -t q

    -j "java.naming.factory.initial=

                com.sun.jndi.ldap.LdapCtxFactory"

    -j "java.naming.provider.url=

                ldap://mydomain.com:389/o=imq"

    -j "java.naming.security.principal=

                 uid=fooUser, ou=People, o=imq"

    -j "java.naming.security.credentials=fooPasswd"

    -j "java.naming.security.authentication=simple"


単一オブジェクトの情報の取得

管理対象オブジェクトに関する情報を入手するには、query サブコマンドを使用します。オブジェクトの検索名、および管理対象オブジェクト (初期コンテキストおよび場所など) を含むオブジェクトストアの属性を指定する必要があります。

次の例では、query サブコマンドを使用して、cn= myTopic という検索名のオブジェクトに関する情報を表示します。

imqobjmgr query

    -l "cn=myTopic"

    -j "java.naming.factory.initial=

             com.sun.jndi.ldap.LdapCtxFactory"

    -j "java.naming.provider.url=

             ldap://mydomain.com:389/o=imq"

    -j "java.naming.security.principal=

             uid=fooUser, ou=People, o=imq"

    -j "java.naming.security.credentials=fooPasswd"

  -j "java.naming.security.authentication=simple"


管理対象オブジェクトの更新

管理対象オブジェクトの属性を変更するには、update コマンドを使用します。検索名とオブジェクトの場所を指定する必要があります。-o オプションを使用して、属性値を変更します。

このコマンドでは、トピックのコネクションファクトリを表す管理対象オブジェクトの属性が変更されます。

imqobjmgr update

 -t tf

 -l "cn=MyTCF"

 -o imqReconnectAttempts=3

 -j "java.naming.factory.initial=

               com.sun.jndi.ldap.LdapCtxFactory"

 -j "java.naming.provider.url=

               ldap://mydomain.com:389/o=imq"

 -j "java.naming.security.principal=

               uid=fooUser, ou=People, o=imq"

 -j "java.naming.security.credentials=fooPasswd"

 -j "java.naming.security.authentication=simple"



前へ      目次      索引      次へ     


Part No: 819-2217.   Copyright 2005 Sun Microsystems, Inc. All rights reserved.