Oracle® Fusion Middleware Oracle WebLogic Server JMS のコンフィグレーションと管理 11g リリース 1 (10.3.1) B55547-01 |
|
戻る |
次へ |
WebLogic Scripting Tool (WLST) は、JMS サーバおよび JMS システム モジュール リソースの作成や管理に使用できるコマンドライン スクリプト インタフェースです。『Oracle Fusion Middleware Oracle WebLogic Scripting Tool ガイド』の「WebLogic Scripting Tool の使用」および「WLST サンプル スクリプト」を参照してください。
JMS システム モジュールは、config.xml
の jms-system-resource
MBean で記述します。jms-system-resource
MBean の基本的なコンポーネントは以下のとおりです。
name
- モジュールの名前。
target
- モジュールを対象指定するサーバ、クラスタ、または移行可能対象。
sub-deployment
- JMS システム モジュール リソース (キュー、トピック、接続ファクトリなど) をグループ化し、サーバ リソース (JMS サーバ インスタンス、WebLogic サーバ インスタンス、クラスタなど) に対象指定するメカニズム。
descriptor-file-name
- システム モジュール ファイルのパスとファイル名。
システム モジュールの JMS リソースは、weblogic-jmsmd.xml
スキーマに準拠するモジュール記述子ファイル内に配置されます。図 6-1 の myModule-jms.xml
というモジュールには、接続ファクトリとキューの JMS システム リソース定義が含まれています。sub-deployment-name
要素は、myModule
-jms.xml
ファイル内の JMS リソースをグループ化して、config.xml
内の targets
に対象指定するために使用します。WLST を使用する場合は、sub-deployment-name
要素の値を指定する必要があります。サブデプロイメントの詳細については、「JMS システム モジュールとリソースのサブデプロイメントの対象指定」を参照してください。図 6-1 では、sub-deployment-name
DeployToJMSServer1 を使用して、myModule-jms
モジュールの接続ファクトリ とキュー
CQueue
のグループ化と対象指定をしています。
JMS リソースの使い方の詳細については、「JMS コンフィグレーション リソースとは」を参照してください。
WLST を使用して JMS システム リソースを作成するには、以下のタスクを実行する必要があります。
編集セッションを開始します。
JMS リソース (キュー、トピック、接続ファクトリなど) を含む JMS システム モジュールを作成します。
JMS サーバ リソースを作成します。
編集セッションを確立したら、以下の手順で JMS サーバとシステム モジュール リソースをコンフィグレーションします。
リソースをコンフィグレーションするサーバの WebLogic Server MBean オブジェクトを取得します。次に例を示します。
servermb=getMBean("Servers/examplesServer") if servermb is None: print '@@@ No server MBean found'
システム リソースを作成します。次に例を示します。
jmsMySystemResource = create(myJmsSystemResource,"JMSSystemResource")
このシステム リソースを WebLogic Server インスタンスに対象指定します。次に例を示します。
jmsMySystemResource.addTarget(servermb)
システム リソース オブジェクトを取得します。次に例を示します。
theJMSResource = jmsMySystemResource.getJMSResource()
モジュールのリソース (キュー、トピック、接続ファクトリなど) を作成します。次に例を示します。
connfact1 = theJMSResource.createConnectionFactory(factoryName) jmsqueue1 = theJMSResource.createQueue(queueName)
リソース属性をコンフィグレーションします。次に例を示します。
connfact1.setJNDIName(factoryName) jmsqueue1.setJNDIName(queueName)
システム リソースのサブデプロイメント名を作成します。「JMS システム モジュールとサブデプロイメントについて」を参照してください。次に例を示します。
connfact1.setSubDeploymentName('DeployToJMSServer1') jmsqueue1.setSubDeploymentName('DeployToJMSServer1')
JMS サーバを作成します。次に例を示します。
jmsserver1mb = create(jmsServerName,'JMSServer')
この JMS サーバを WebLogic Server インスタンスに対象指定します。次に例を示します。
jmsserver1mb.addTarget(servermb)
sub-deployment-name 要素に指定した値
を使用して、サブデプロイメント オブジェクトを作成します。これにより、モジュール内のシステム リソースが、config.xml
の sub-deployment
要素にグループ化されます。次に例を示します。
subDep1mb = jmsMySystemResource.createSubDeployment('DeployToJMSServer1')
サブデプロイメントをサーバ リソース (JMS サーバ インスタンス、WebLogic Server インスタンス、クラスタなど) に対象指定します。次に例を示します。
subDep1mb.addTarget(jmsserver1mb)
コード リスト 6-1 JMS システム リソースを作成する WLST スクリプト
"""このスクリプトでは、編集セッションを開始して JMS サーバを作成し、この JMS サーバを WLST が接続されているサーバに対象指定し、JMS キューおよび接続ファクトリを含む JMS システム モジュールを作成する。JMS キューおよび JMS トピックは、sub-deployments を使用して対象指定される。""" import sys from java.lang import System print "@@@ Starting the script ..." myJmsSystemResource = "CapiQueue-jms" factoryName = "CConFac" jmsServerName = "myJMSServer" queueName = "CQueue" url = sys.argv[1] usr = sys.argv[2] password = sys.argv[3] connect(usr,password, url) edit() startEdit() //手順 1 servermb=getMBean("Servers/examplesServer") if servermb is None: print '@@@ No server MBean found' else: //手順 2 jmsMySystemResource = create(myJmsSystemResource,"JMSSystemResource") //手順 3 jmsMySystemResource.addTarget(servermb) //手順 4 theJMSResource = jmsMySystemResource.getJMSResource() //手順 5 connfact1 = theJMSResource.createConnectionFactory(factoryName) jmsqueue1 = theJMSResource.createQueue(queueName) //手順 6 connfact1.setJNDIName(factoryName) jmsqueue1.setJNDIName(queueName) //手順 7 jmsqueue1.setSubDeploymentName('DeployToJMSServer1') connfact1.setSubDeploymentName('DeployToJMSServer1') //手順 8 jmsserver1mb = create(jmsServerName,'JMSServer') //手順 9 jmsserver1mb.addTarget(servermb) //手順 10 subDep1mb = jmsMySystemResource.createSubDeployment('DeployToJMSServer1') //手順 11 subDep1mb.addTarget(jmsserver1mb) . . .
MBean から利用できる適切なメソッドを使用すると、JMS オブジェクトおよび属性を変更したりモニタしたりできます。
JMS オブジェクトおよび属性を変更する場合は、set、target、untarget、および delete メソッドを使用する
JMS 実行時オブジェクトをモニタするには get メソッドを使用する
詳細については、『Oracle Fusion Middleware Oracle WebLogic Scripting Tool ガイド』の「MBean の移動 (WLST オンライン)」を参照してください。
この節では、WLST を使用して JMS サーバおよび JMS システム モジュール リソースをコンフィグレーションするときのベスト プラクティスを示します。
MBean オブジェクトを操作する前に、Null MBean オブジェクト (サーバ、JMS サーバ、モジュールなど) をトラップする。
サブデプロイメント名は理解しやすい名前にする。たとえば、サブデプロイメント名を DeployToJMSServer1 にすると、この名前のすべてのサブデプロイメントが JMSServer1 にデプロイされることが分かります。