Avitek Medical Record 開発チュートリアル

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

 


プロダクションへの移行

 


チュートリアル 15 : WLST と Administration Console を使用して MedRec パッケージをプロダクションにデプロイする

このチュートリアルでは、WebLogic Scripting Tool (WLST) と Administration Console を使用して MedRec アプリケーションをプロダクション用サーバにデプロイする方法を説明します。この例では、アプリケーション ファイルを EAR ファイルとしてでなく、展開ディレクトリ形式でパッケージ化しています。プロダクション用に展開形式を使用する利点は、展開されたディレクトリのデプロイメント記述子ファイルを更新できることです。アーカイブ解除し、更新後に再度アーカイブする必要はありません。

このチュートリアルのように展開形式を使用するのではなく、MedRec アプリケーションを 1 つの EAR アーカイブ ファイルにパッケージ化する手順については、「チュートリアル 14 : 配布用の MedRec のパッケージ化」を参照してください。EAR ファイルにパッケージ化すると、アプリケーションが 1 つのファイルにまとめられてポータブルになるため、アプリケーションの移行や配布が容易になるという利点があります。

以下の手順では、「チュートリアル 13 : MedRec プロジェクト全体のコンパイル」で作成した dist ディレクトリの medrecEarstartBrowserEarphysicianEar、および initEar サブディレィトリの展開された内容をデプロイします。

MedRec アプリケーションのコンポーネントの詳細については、「Avitek Medical Records 開発チュートリアルの概要」を参照してください。

チュートリアルの内容は以下のとおりです。

 


前提条件

このチュートリアルを始める前に、以下のことを行ってください。

 


手順

MedRec アプリケーションをプロダクションにデプロイするには、次の手順に従います。

手順 1 : PointBase と MedRec サーバを起動する

  1. PointBase が起動していない場合は、起動します。
  2. 手順 1 : PointBase データベースを起動する」を参照してください。

  3. MedRec サーバが起動していない場合は、起動します。
  4. Windows の [スタート] メニューから起動する場合

    [スタート|すべてのプログラム|BEA Products|User Projects|MedRecDomain|Start Admin Server for WebLogic Server Domain]

    コマンドラインを使用する場合

    prompt> C:\bea\user_projects\domains\MedRecDomain\startWebLogic.cmd

手順 2 : デプロイ済みのアプリケーションを削除する

クリーンな状態から始められるように、Administration Console を使用して、これまでのチュートリアルでデプロイしたさまざまな MedRec アプリケーションを削除します。

  1. ブラウザで以下の URL を指定して Administration Console を開きます。
  2. http://host:7101/console

    host は MedRecServer が実行されているコンピュータを指します。ブラウザが MedRecServer と同じコンピュータにある場合は、http://localhost:7101/console という URL を使用できます。

  3. ユーザ名とパスワードの両方に weblogic を指定して、[ログイン] をクリックします。
  4. 左の [ドメイン構造] ペインで、[MedRecDomain|デプロイメント] をクリックします。
  5. 右ペインの [デプロイメント] テーブルに、これまでのチュートリアルのアプリケーションが表示されている場合は、アプリケーションごとに以下の手順を行って削除します。
    1. まだ行っていない場合は、Administration Console の左上の [チェンジ センタ] ウィンドウにある [ロックして編集] をクリックします。
    2. [デプロイメント] テーブルで、アプリケーション名の左にあるボックスをチェックして、これまでのチュートリアル (tutorial_deploymentwlpackage_tutorial など) のデプロイメントを選択します。
    3. [停止|直ちに強制停止] をクリックして、アプリケーションを確実に停止します。
    4. [はい] をクリックします。
    5. [デプロイメント] テーブルで、アプリケーションを再び選択します。
    6. [削除] をクリックします。
    7. [はい] をクリックします。
    8. [チェンジ センタ] で、[変更のアクティブ化] をクリックして MedRec サーバ コンフィグレーションを更新します。

手順 3 : WLST を使用して medrecEar をデプロイする

以下の手順では、WebLogic Scripting Tool (WLST) を使用して、medrecEar をプロダクション用の WebLogic Server にデプロイする方法について説明します。

WebLogic Scripting Tool (WLST) は、システム管理者やオペレータが、WebLogic Server インスタンスおよびドメインのモニタと管理に使用する、コマンドライン スクリプト インタフェースです。WLST スクリプト環境は、Java のスクリプト インタプリタである Jython に基づいています。

システム管理者は、一般に、以下のような用途に WLST を使用します。

WLST の機能には、wlconfig Ant タスクや weblogic.Deployer ユーティリティなどの WebLogic Server コマンドライン ユーティリティの機能も含まれています。この手順では、まず、connectdeploy などの WLST コマンドを含む Jython スクリプトの作成方法を示します。次に、WLST ツールを呼び出して引数として Jython スクリプト ファイルを渡す Ant ビルド ファイルの作成方法について説明します。このチュートリアルでは説明しませんが、WLST を対話形式で使用することもできます。

  1. コマンド ウィンドウを開き、環境を設定します。
  2. prompt> c:\bea\user_projects\domains\medrecdomain\bin\setDomainEnv.cmd
  3. medrecEar サブディレクトリに移動します。
  4. prompt> cd c:\medrec_tutorial\src\medrecEar
  5. テキスト エディタを使用して deploy.py という新しいファイルを作成します。このファイルに WLST コマンドが含まれます。次に例を示します。
  6. prompt> notepad deploy.py
    注意 : このチュートリアルで deploy.py ファイルを手動で作成する代わりに、deploy_tutorial.py という名前のファイルを deploy.py という名前の新しいファイルにコピーして、手順を進めることもできます。
  7. deploy.py ファイルに次の行を追加します (必要に応じて、c:\medrec_tutorial を実際の MedRec プロジェクト ディレクトリに置き換えてください)。この手順の後の方で WLST コマンドについて説明します。
  8. userName = "weblogic"
    passWord = "weblogic"
    url="t3://localhost:7101"
    connect(userName, passWord, url)
    progress= deploy(
    'medrecEar',
    'c:\medrec_tutorial\dist\medrecEar',
    targets='MedRecServer',
    subModuleTargets='MedRecJMSServer@MedRecAppScopedJMS@MedRecJMSServer',
    securityModel='CustomRolesAndPolicies' )
    progress.printStatus()
    disconnect()
    exit()

    userNamepassWord、および url 変数は、管理サーバへの接続に使用される管理ユーザ、パスワード、および URL の値を設定しています。connect WLST コマンドは、これらの変数を使用して MedRecServer に接続します。progress 変数は、デプロイメントのステータスを定義する WLSTProgress オブジェクトを格納します。deploy コマンドは medrecEar アプリケーションをデプロイします。ソース (c:\medrec_tutorial\dist\medrecEar) やデプロイメント対象などの標準のオプションに加えて、deploy コマンドは次のような追加のオプションも指定しています。subModuleTargets は、medrecEar に含まれる、サブデプロイメント レベルのアプリケーション スコープの JMS モジュールを指定しています。securityModel は、medrecEar アプリケーションがカスタムのセキュリティ ロールおよびポリシーを使用することを指定しています。最後に、progress 変数の printStatus メソッドはデプロイメントのステータスを出力します。disconnect コマンドが接続を閉じて、exit コマンドがスクリプト シェルを終了します。

  9. ファイルを保存して閉じます。
  10. テキスト エディタを使用して wlst_deploy.xml という名前の新しいファイルを作成します。次に例を示します。
  11. prompt> notepad wlst_deploy.xml
    注意 : このチュートリアルで wlst_deploy.xml ファイルを手動で作成する代わりに、wlst_tutorial.xml という名前のファイルを wlst_deploy.xml という名前の新しいファイルにコピーして、手順を進めることもできます。
  12. wlst_deploy.xml ファイルの最初に、wlst_tutorial という名前のプロジェクトを定義し、デフォルトのターゲット deploy を指定します。
  13. <project name="wlst_tutorial" default="deploy">
  14. WLST Java ユーティリティを実行するためのメイン ターゲットを定義します。arg タスクを使用して deploy.py 引数を指定します。
  15. <target name="deploy">
    <java classname="weblogic.WLST" fork="yes">
    <arg line="deploy.py" />
    </java>
    </target>

    java タスクの classname 属性で指定されているように、WLST の Java クラス名は weblogic.WLST です。

  16. プロジェクト要素を閉じて、wlst_deploy.xml ファイルを完成します。
  17. </project>
  18. ファイルの内容は次のようになっている必要があります。
  19. <project name="wlst_tutorial" default="deploy">
      <target name="deploy">
    <java classname="weblogic.WLST" fork="yes">
    <arg line="deploy.py" />
    </java>
    </target>
    </project>

    ファイルを保存して、テキスト エディタを終了します。

  20. 同じコマンド シェルで、ビルド スクリプトを実行するコマンドを入力します。
  21. prompt> ant -f wlst_deploy.xml

    WLST から次のような出力が表示されます。

    Buildfile: wlst_deploy.xml
    deploy:
         [java] Initializing WebLogic Scripting Tool (WLST) ...
    [java] Welcome to WebLogic Server Administration Scripting Shell
    [java] Type help() for help on available commands
    [java] Connecting to t3://localhost:7101 with userid weblogic ...
    [java] Successfully connected to Admin Server 'MedRecServer' that belongs to domain 'MedRecDomain'.
    [java] Warning: An insecure protocol was used to connect to the
    [java] server. To ensure on-the-wire security, the SSL port or
    [java] Admin port should be used instead.
    [java] Deploying application from c:\medrec_tutorial\dist\medrecEar to targets MedRecServer (upload=false) ...
    [java] <Apr 6, 2007 3:33:51 PM PDT> <Info> <J2EE Deployment SPI> <BEA-260121> <Initiating deploy operation for application, medrecEar [archive: C:\medrec_tutorial\dist\medrecEar], to MedRecJMSServer MedRecServer .>
    [java] ...Completed the deployment of Application with status completed
    [java] Current Status of your Deployment:
    [java] Deployment command type: deploy
    [java] Deployment State : completed
    [java] Deployment Message : no message
    [java] Current Status of your Deployment:
    [java] Deployment command type: deploy
    [java] Deployment State : completed
    [java] Deployment Message : no message
    [java] Disconnected from weblogic server: MedRecServer
         [java] Exiting WebLogic Scripting Tool.
         [java] <Apr 6, 2007 3:34:01 PM PDT> <Warning> <JNDI> <BEA-050001> <WLContext.close() was called in a different thread than the one in which it was created.>
    BUILD SUCCESSFUL
    Total time: 1 minute 10 seconds
  22. Administration Console を使用して、[デプロイメント] テーブルに medrecEar が表示され、[アクティブ] 状態にあることを確認します。詳細については、「手順 2 : デプロイ済みのアプリケーションを削除する」の最初の方の手順を参照してください。

手順 4 : Administration Console で physicianEar、initEar、および startBrowserEar をデプロイする

残りの MedRec アプリケーションを次のように WebLogic Server にデプロイします。ブラウザでの Administration Console の起動の詳細については、「手順 2 : デプロイ済みのアプリケーションを削除する」を参照してください。

  1. Administration Console の左上の [チェンジ センタ] ウィンドウにある [ロックして編集] をクリックします。
  2. 左の [ドメイン構造] ペインで、[MedRecDomain|デプロイメント] をクリックします。
  3. 右ペインの [デプロイメント] テーブルで、[インストール] をクリックします。
  4. [場所] フィールドのリンクを使用して、C:\medrec_tutorial\dist を選択します。
  5. [physicianEar] を選択して [次へ] をクリックします。
  6. [対象指定スタイルの選択] ウィンドウで、[このデプロイメントをアプリケーションとしてインストールする] を選択して、[次へ] をクリックします。
  7. [省略可能な設定] ウィンドウの [セキュリティ] セクションで、[詳細 : レルムのコンフィグレーション ページでコンフィグレーションしたカスタム モデルを使用します。] を選択します。
  8. この選択により、Administration Console を使用して、デプロイメントのカスタム セキュリティ ロールおよびポリシーをコンフィグレーションできるようになります。

  9. [次へ] をクリックします。
  10. [選択項目を確認して [完了] をクリック] ウィンドウの [追加コンフィグレーション] セクションで、[いいえ、後でコンフィグレーションを確認します。] を選択します。
  11. 他の選択項目がすべて正しいことを確認します。[概要] には次のように表示されます。

    デプロイメント :         C:\medrec_tutorial\dist\physicianEar
    名前 : physicianEar
    ステージング モード : 選択した対象に定義されるデフォルトを使用
    セキュリティ モデル : 詳細 : レルムのコンフィグレーション ページでコンフィグレーションしたカスタム モデルを使用します。
  12. [完了] をクリックします。
  13. 手順 2 から 10 を繰り返して、initEar および startBrowserEar アプリケーションをインストールします。
  14. [チェンジ センタ] で、[変更のアクティブ化] をクリックしてコンフィグレーションを更新します。
  15. [デプロイメント] テーブルで、インストールした 3 つのアプリケーションを選択します。
  16. [起動|すべての要求を処理] をクリックします。
  17. [はい] をクリックします。
  18. MedRecServer がアプリケーションを起動すると、[デプロイメント] テーブルの各アプリケーションの [状態] カラムには [アクティブ] と表示されます。

    また、メインの MedRec 情報ページがブラウザに表示されます。

  19. ブラウザで以下のログイン ページを指定して、MedRec アプリケーションがデプロイされていることを確認します。
    • http://host:7101/physician
    • http://host:7101/patient
    • http://host:7101/admin
    • 上記の URL で、hostMedRecServer をホストするコンピュータを指します。ブラウザが MedRecServer と同じコンピュータにある場合は、localhost (http://localhost:7101/physician など) を使用できます。

      これらのページでは、まだコンフィグレーションしていないセキュリティが必要になるため、この時点では、ログイン ページの表示以外は行えません。このタスクは以降のチュートリアルで説明します。

 


ベスト プラクティス

 


全体像

分割開発ディレクトリ フレームワークを使用すると、MedRec のコンパイルされたファイルや生成されたファイルを、編集可能なファイルとは別にデプロイできます。この機能は、アプリケーションを頻繁に変更するデプロイメント段階で便利です。ただし、プロダクション環境で求められる形式は、従来の単一ディレクトリ構造であって、各アプリケーションが個別のサブディレクトリに展開形式で格納されているというものです。

このチュートリアルでは、アプリケーションとそのすべてのコンポーネント、およびサポート ファイルを含むディレクトリから MedRec のアプリケーションをデプロイしました。アプリケーションを展開形式にすると、アーカイブにまとめられている場合よりも簡単に編集可能ファイルにアクセスできます。

dist 内の各アプリケーション サブディレクトリには、build ディレクトリのコンパイル済みクラスと生成されたデプロイメント記述子、および src ディレクトリの編集可能デプロイメント記述子とその他のファイルが含まれます。

 


関連情報


ページの先頭       前  次