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

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

 


MedRec アプリケーションの開発

 


チュートリアル 9 : 開発環境の MedRec のデプロイ

このチュートリアルでは、wldeploy Ant タスクおよび weblogic.Deployer ユーティリティを使用して WebLogic 分割開発ディレクトリのアプリケーションをデプロイする方法を説明します。これらの方法で、アプリケーションをパッケージ化することなく、アプリケーションを開発環境に迅速にデプロイできます。これらの方法を使用しない場合は、ビルド環境を変更する必要があります。

このチュートリアルは、以下の節で構成されています。

 


前提条件

このチュートリアルを開始する前に、チュートリアル 5 ~ 8 を実行して、プロジェクト ディレクトリを作成し、Physician アプリケーションのビルドの中間手順を実行してください。チュートリアル 5 を完了しているが、それ以降のチュートリアルを 1 つまたは複数行っていない場合は、c:\medrec_tutorial\src\physicianEar サブディレクトリに移動し、環境を設定し、Ant を使用してデフォルトの build.xml ファイルを実行すれば追いつくことができます。

prompt> c:\bea\user_projects\domains\MedRecDomain\bin\setDomainEnv.cmd
prompt> cd c:\medrec_tutorial\src\physicianEar
prompt> ant -f build.xml

 


手順

これまで、WebLogic Server でのエンタープライズ アプリケーションのビルドを簡単にする上で分割開発ディレクトリ構造が果たす役割について見てきました。この手順では、このディレクトリ構造でエンタープライズ アプリケーションをデプロイするとどのように簡単なのかを理解します。

エンタープライズ アプリケーションをデプロイすることは、それをビルドするのと同じくらい手間がかかるように見えることがあります。それは、通常はコンパイル済み Java クラスと変更可能なデプロイメント記述子を組み合わせて使用し、展開された EAR ディレクトリまたは圧縮された EAR ファイルを作成してからデプロイする必要があるためです。このプロセスでは通常、ファイルを別の場所にコピーし、ディレクトリ構造を変更してから、デプロイします。さらに、アプリケーションを再びビルドしたりデプロイメント記述子を変更するたびに、このプロセスを繰り返します。

分割開発ディレクトリでは、コンパイル済みファイルは build ディレクトリ、変更可能なソース ファイルおよび記述子は source ディレクトリにそれぞれ格納され、厳密に分けられます。WebLogic Server には、分割開発ディレクトリからアプリケーションを直接デプロイする機能があり、アプリケーションをデプロイするビルド ディレクトリを指定するだけで、この機能を使用できます。この手順では、分割開発ディレクトリを使用して physicianEar (現時点でデプロイ可能な状態までビルドされている) をデプロイします。

  1. コマンド シェル ウィンドウを開き、PointBase がまだ実行されてない場合は起動します。
  2. prompt> cd c:\bea\weblogic92\common\eval\pointbase\tools
    prompt> startPointBase.cmd
  3. MedRecServer が起動していない場合は、最初に起動します。
    1. 新しいコマンド シェル ウィンドウを開きます。
    2. 次の起動スクリプトを実行して MedRec サーバを起動します。
    3. prompt> c:\bea\user_projects\domains\medrecdomain\startweblogic.cmd
  4. 別のコマンド シェル ウィンドウを開き、環境を設定します。
  5. prompt> c:\bea\user_projects\domains\medrecdomain\bin\setDomainEnv.cmd
  6. physicianEar サブディレクトリ以外にいる場合は、このサブディレクトリに移動します。
  7. prompt> cd c:\medrec_tutorial\src\physicianEar
  8. テキスト エディタを使用して deploy.xml という新しいファイルを作成します。
  9. prompt> notepad deploy.xml
    Note: このチュートリアルで deploy.xml ファイルを手動で作成する代わりに、wldeploy_tutorial.xml という名前のファイルを deploy.xml という名前の新しいファイルにコピーして、手順を進めることもできます。
  10. deploy.xml ファイルで、まず tutorial という名前のプロジェクトを定義します。
  11. <project name="tutorial" default="deploy">
  12. アプリケーションをデプロイするメイン ターゲットを定義します。
  13.   <target name="deploy">
    <wldeploy user="weblogic"
    password="weblogic"
    adminurl="t3://127.0.0.1:7101"
    action="deploy"
    name="tutorial_deployment"
    source="c:\medrec_tutorial\build\physicianEar" />
    </target>
  14. プロジェクト要素を閉じて、deploy.xml ファイルを完成します。
  15. </project>
  16. ファイルの内容は次のようになっている必要があります。
  17. <project name="tutorial" default="deploy">
      <target name="deploy">
    <wldeploy user="weblogic"
    password="weblogic"
    adminurl="t3://127.0.0.1:7101"
    action="deploy"
    name="tutorial_deployment"
    source="c:\medrec_tutorial\build\physicianEar" />
    </target>
    </project>

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

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

    wldeploy タスクにより、以下のような出力が表示されます。

    Buildfile: deploy.xml
    deploy:
     [wldeploy] weblogic.Deployer -noexit -name tutorial_deployment -source C:\medrec_tutorial\build\physicianEar -adminurl t3://127.0.0.1:7101 -user weblogic -password ******** -deploy
    [wldeploy] weblogic.Deployer invoked with options: -noexit -name tutorial_deployment -source C:\medrec_tutorial\build\physicianEar -adminurl t3://127.0.0.1:7101 -user weblogic -deploy
    [wldeploy] <Jul 24, 2006 3:02:24 PM PDT> <Info> <J2EE Deployment SPI> <BEA-260121> <Initiating deploy operation for application, tutorial_deployment [archive:C:\medrec_tutorial\build\physicianEar], to configured targets.>
    [wldeploy] Task 0 initiated: [Deployer:149026]deploy application tutorial_deployment on MedRecServer.
    [wldeploy] Task 0 completed: [Deployer:149026]deploy application tutorial_deployment on MedRecServer.
    [wldeploy] Target state: deploy completed on Server MedRecServer
    [wldeploy]
    BUILD SUCCESSFUL
    Total time: 5 seconds

    上記の出力が表示されない場合、MedRecServer の起動が完了していないか、または deploy.xml ファイルにタイプ ミスが含まれている可能性があります。この場合、サーバが起動を完了するまで待機するか、インストールされているチュートリアル ファイルを使用してデプロイを試行してください。

    prompt> ant -f wldeploy_tutorial.xml

    physicianEar をデプロイしようとしたときに以下のエラーが表示された場合は、以前に Administration Console を使用したときにコンフィグレーションを解放していなかった可能性があります。

    BUILD FAILED
    C:\medrec_tutorial\src\physicianEar\wldeploy_tutorial.xml:10: weblogic.management.ManagementException: [Deployer:149163]The domain edit lock is owned by another session in non-exclusive mode - this deployment operation requires exclusive access to the edit lock and hence cannot proceed.

    この場合は、Administration Console のチェンジ センタで [変更のアクティブ化] または [コンフィグレーションの解放] をクリックしてから、deploy タスクを再度実行してください。

  20. アプリケーションがデプロイされていることを確認するには、新しいブラウザ ウィンドウを開いて、http://host:7101/physician という URL を入力します。hostMedRecServer をホストするコンピュータです。ブラウザが MedRecServer と同じコンピュータにある場合は、http://localhost:7101/physician という URL を使用できます。
  21. Physician アプリケーションのログイン ページが表示されるはずです。この時点では、他の MedRec アプリケーション スイートがまだ使用できないため、そのページを参照することしかできません。

  22. wldeploy タスクには、weblogic.Deployer コマンドライン ユーティリティで使用できるのと同じオプションを使用します。次のチュートリアルに進む前に、weblogic.Deployer を使用して Physician アプリケーションをアンデプロイします。同じコマンドライン ウィンドウで、次のコマンドを入力します。
  23. prompt> java weblogic.Deployer -adminurl t3://127.0.0.1:7101 -user weblogic -password weblogic -undeploy -name tutorial_deployment

    以下の出力メッセージが表示されます。

    <Jul 24, 2006 3:07:08 PM PDT> <Info> <J2EE Deployment SPI> <BEA-260121> <Initiating undeploy operation for application, tutorial_deployment [archive: null], to configured targets.>
    Task 5 initiated: [Deployer:149026]remove application tutorial_deployment on MedRecServer.
    Task 5 completed: [Deployer:149026]remove application tutorial_deployment on MedRecServer.
    Target state: undeploy completed on Server MedRecServer
  24. 次のチュートリアルに向けて、weblogic.Deployer ユーティリティを使用して physicianEar アプリケーションを再デプロイします。
  25. prompt> java weblogic.Deployer -adminurl t3://127.0.0.1:7101 -user weblogic -password weblogic -deploy -name tutorial_deployment -source c:\medrec_tutorial\build\physicianEar

 


ベスト プラクティス

 


全体像

wldeploy が分割ディレクトリをどのように処理するかを理解してください。c:\medrec_tutorial\build\physicianEar の内容は、展開された EAR ディレクトリとほぼ同じですが、デプロイメント記述子はありません。WebLogic Server は、アプリケーションのソース ディレクトリ c:\medrec_tutorial\src\physicianEar を参照する c:\medrec_tutorial\build\physicianEar\.beabuild.txt ファイルを調べて、使用する適切なデプロイメント記述子を見つけます。ソース ディレクトリに、アプリケーションのデプロイに必要なコンポーネントのデプロイメント記述子が含まれています。

 


関連情報


  ページの先頭       前  次