IntelliJ IDEA 2018.2 Help

Java EEアプリケーションの開発

このチュートリアルでは、Java EEアプリケーション開発ワークフローについて説明します。

開発しようとしているアプリケーションは最小限に抑えられます。それは1つのJSPページのJava Webアプリケーションになります。ただし、ここに示すIntelliJ IDEAの機能は、Java EEアプリケーションにも適用できます。

始める前に

次のソフトウェアがコンピュータにインストールされていることを確認します。

  • IntelliJ IDEAアルティメットエディション。

  • GlassFish Serverバージョン3.0.1以降。 GlassFishをダウンロード(英語)。 (他のJava EE対応のアプリケーションサーバーを使用することもできますが、ここでは例としてGlassFishを使用しています)。

  • ウェブブラウザ。

プロジェクトの作成

  1. ようこそ画面で新規プロジェクトの作成をクリックするか、ファイル | 新規 | プロジェクトを選択します。

    新規プロジェクトウィザードが開きます。

  2. 左側のペインで、Java エンタープライズを選択します。

  3. 使用するJDK(英語)プロジェクト SDKフィールド)を指定します。リストから1つを選択し、新規をクリックしてJDKインストールフォルダを選択するか、JDK のダウンロードをクリックします。

  4. アプリケーションサーバーを指定します。 (GlassFish Serverを使用します)。

    GlassFishがまだIntelliJ IDEAに定義されていない場合は、アプリケーション・サーバーフィールドの右側にある新規をクリックし、GlassFish サーバーを選択します。

    GlassFish サーバーダイアログで、GlassFishサーバーのインストールディレクトリを指定します。

  5. 追加のライブラリーおよびフレームワークの下で、Web アプリケーションチェックボックスを選択します。
    HWJEE009NewProjectFirstPageFinal

    次へをクリックします。

  6. 新しいプロジェクトの名前を指定します(例:JavaEEHelloWorld)。
    HWJEE010NewProjectName

    完了をクリックし、 IntelliJ IDEA がプロジェクトを作成している間待ちます。

プロジェクトの構造を探る

プロジェクトが作成されると、プロジェクトツールウィンドウにこれに類似したものが表示されます。

HWJEE011ProjectInit
  • JavaEEHelloWorldはモジュールフォルダです(この場合、プロジェクトフォルダと一致します)。 .idea フォルダと JavaEEHelloWorld.iml ファイルには、プロジェクトとモジュールの設定データがそれぞれ含まれています。 src というフォルダは、Javaソースコードのためのものです。 web フォルダは、アプリケーションのWebパーツ用です。現時点では、このフォルダには、デプロイ記述子 WEB-INF/web.xml と、アプリケーションの開始ページとして指定されたファイル index.jsp が含まれています。

  • 外部ライブラリーには、GlassFishを使用するためのJDKとJARファイルが含まれています。

ソースコードの開発

アプリケーションは単一のJSPページアプリケーションになります: その唯一の機能は、テキストこんにちは世界!を出力することです

  1. 編集用 index.jsp を開く:プロジェクトツールウィンドウでファイルを選択し、 F4を押します。

  2. <body></body>Hello, World!との間
    HWJEEIndexJSPHelloWorld

    このステップのコードは準備ができています。

アプリケーションの実行

ワークスペースの右上にある icons toolwindows toolWindowRun svgをクリックします。

HWJEE019Run

IntelliJ IDEAはソースコードをコンパイルし、アプリケーションアーティファクトを構築します。

その後、実行ツールウィンドウが開きます。 IntelliJ IDEAはサーバを起動し、アーティファクトをその上にデプロイします。

HWJEE020RunToolWindow

最後に、デフォルトのWebブラウザが起動し、そこでアプリケーション出力 Hello, World! が表示されます。

HWJEE021HelloWorldInBrowser

コードの変更と変更の観察

  1. index.jspでは、 Hello, World!Hello!に変更します。

    HWJEE022ModifyCode

  2. 実行ツールウィンドウで、 update iconの更新をクリックします。

    HWJEE023RunToolWindowUpdate

  3. 更新ダイアログでリソースの更新を選択し、OKをクリックします。詳細については、アプリケーションの更新オプションを参照してください。

    HWJEE024UpdateDialog

  4. Webブラウザに切り替え、ページをリロードして変更を確認します。

    HWJEE025HelloInBrowser

アプリケーションサーバーでのアプリケーションの更新も参照してください。

実行コンフィギュレーションの探索

プロジェクトの作成時に、GlassFishをアプリケーションサーバーとして指定しました。その結果、IntelliJ IDEAはGlassFishの実行コンフィギュレーションを作成しました。

実行コマンド(icons toolwindows toolWindowRun svg)を実行すると、その実行構成が開始されました。さて、実行コンフィギュレーションを見てみましょう。そして、ちょうど見たイベントにその設定がどのようにマップされるかを見てみましょう。

  1. 実行コンフィギュレーションセレクタをクリックし、構成の編集を選択します。
    HWJEE026EditConfigurations

    実行/デバッグ構成ダイアログが開き、GlassFish実行構成の設定が表示されます。

    HWJEE027RunDebugConfigurations

    ダイアログの下部にある起動前タスクリストは、実行コードを実行する前に、アプリケーションコードをコンパイルし、対応する成果物を構築する必要があることを指定します。

    HWJEE028RunConfigBeforeLaunch
  2. スタートアップ/接続タブを選択して、実行、デバッグ、およびコードカバレッジモードでのサーバーの起動方法を確認します。

    HWJEE030RunConfigStartupConnection

  3. デプロイ」タブを選択して、サーバーの始動後に展開される成果物を確認します。

    HWJEE029RunConfigDeployment

  4. サーバータブに戻ります。

    ブラウザーを開くの設定では、起動後(サーバーが起動してアーティファクトが展開された後)、デフォルトのWebブラウザが起動し、指定されたURL(http://localhost:8080/JavaEEHelloWorld_war_exploded)に移動するように指定します。

    '更新' アクション時の右側の設定では、実行ツールウィンドウの update icon をクリックすると、更新ダイアログが表示され、リソースの更新オプションがデフォルトで使用されるはずです。 (最後に使用された更新オプションがデフォルトのものになります)。

    HWJEE028RunConfigServer
  5. OKをクリックします。

成果物構成の探索

プロジェクトを作成するときに、Webアプリケーションを開発する予定であることを示しました。その結果、 IntelliJ IDEAは、とりわけ、Webアプリケーションアーティファクトを構築するための構成を作成しました。この設定を見てみましょう。

  1. プロジェクト構造ダイアログを開きます:ファイル | プロジェクト構造または Ctrl+Shift+Alt+S

  2. プロジェクト設定の下で、成果物を選択します。

    使用可能なアーティファクト構成は、 icons general add svg および icons general remove svgの右側のペインに表示されます。 (現時点では1つの設定しかありません)。

    HWJEE032ProjectStructureArtifacts

    アーティファクト設定はダイアログの右側に表示されます。

    HWJEE033ProjectStructureArtifactSettings

    型。アーティファクト・タイプは、Webアプリケーション:Explodedです。これは、Webサーバー上にデプロイの準備ができているディレクトリ構造である、圧縮解除されたWebアプリケーションアーカイブ(WAR)です。

    出力ディレクトリー。アーティファクトを作成すると <project_folder>/out/artifacts/JavaEEHelloWorld_war_explodedに配置されます。

    出力レイアウト。アーティファクト構造は、出力レイアウトタブの左側のペインに表示されます。

    <output root>は出力ディレクトリに対応します。他の要素は、以下の意味を有します。

    • 'JavaEEHelloWorld'コンパイル出力は、ソースが src ディレクトリにあるコンパイル済みのJavaクラスを表します。これらは、出力ディレクトリの WEB-INF/classes に配置されます。

    • 'Web'ファセットリソースは、 web ディレクトリの内容を表します。

アプリケーションをWARファイルにパッケージ化する

アプリケーションに満足している段階になると、WAR(英語)(Webアプリケーションアーカイブ)に配置することができます。これを行うには、適切な成果物構成を作成し、成果物を構築する必要があります。

  1. icons general add svgをクリックし、Web アプリケーション: アーカイブをポイントして'JavaEEHelloWorld: warは、を選択します。
    HWJEE034ProjectStructureNewArtifact

    新しいアーティファクト構成が作成され、その設定がダイアログの右側に表示されます。

    HWJEE035ProjectStructureNewArtifactSettings
  2. アーカイブのマニフェストファイルを作成します:マニフェストの作成をクリックして、IntelliJ IDEA(web/META-INF/MANIFEST.MF)が推奨する場所に同意します。

  3. プロジェクト構造ダイアログでOKをクリックします。

  4. ビルド | 成果物のビルドを選択します。

    HWJEE036BuildArtifacts

  5. ビルド成果物ポップアップで、JavaEEHelloWorld:warをポイントし、ビルドを選択します。
    HWJEE037BuildArtifactPopup

    out/artifacts/JavaEEHelloWorld_war フォルダを見ると、そこにアーカイブが表示されます。

    HWJEE038ArtifactInProjectToolWindow

実行中のサーバーにアーティファクトを展開する

実行中のサーバーにアプリをデプロイする必要があることがあります。ここでは、使い方の例を示します。

サーバーを起動しないサーバー実行構成はリモートと呼ばれます。このような実行構成は、たとえば、すでに実行されているサーバーにアプリケーションを展開するために使用できます。 (ローカルおよびリモートの実行コンフィギュレーションを参照してください)。

実行中のサーバーにWARアーティファクトをデプロイするための実行構成を作成し、その動作を確認しましょう。 (今は、サーバは実行コンフィギュレーション前に説明したによって起動されています)。

  1. 実行コンフィギュレーションセレクタをクリックし、構成の編集を選択します。

    HWJEE026EditConfigurations

  2. icons general add svgをクリックし、GlassFish サーバーをポイントしてリモートを選択します。

    HWJEE039NewRemoteServerRunConfig

  3. 実行構成名名前未設定をより賢明なものに変更してください(例:GlassFishRemote)。

    HWJEE040RunConfigName

  4. サーバーに展開する成果物を指定します。デプロイタブを選択し、 icons general add svg をクリックして成果物を選択します。
    HWJEE041DeploymentPlusArtifact

    表示されたダイアログで、WARアーティファクトを選択します。

    HWJEE042SelectArtifact

    結果は次のようになります。

    HWJEE043ArtifactDefined
  5. 実行/デバッグ構成ダイアログでOKをクリックします。

    次に、この実行コンフィギュレーションがどのように機能するかを見てみましょう。

  6. 実行コンフィギュレーションを実行します: icons toolwindows toolWindowRun svgをクリックします。
    HWJEE044Run

    実行コンフィギュレーションの出力は、実行ツールウィンドウに表示されます。

    HWJEE045RunToolWindow

    しばらくすると、Webブラウザの新しいタブが開き、そこにアプリケーションの出力が表示されます。

    HWJEE046HelloInBrowser

アプリケーションをEARにパッケージ化する: Java EEアプリケーションのサポートの使用

Java EEアプリケーションをEAR(英語)にパッケージ化するには、以下を行う必要があります。

  1. Java EE デプロイメント記述子(英語) application.xmlを作成します。

  2. EAR アーティファクトを設定します。

  3. そのアーティファクトを構築します。

IntelliJ IDEAは、Java EEアプリケーションのサポートの一環として、これらのタスクのほとんどを実行します。

  1. プロジェクトツールウィンドウで、モジュールフォルダを右クリックし、フレームワークのサポートを選択します。

    HWJEE051AddFrameworkSupport

  2. 表示されるダイアログで、JavaEE アプリケーションチェックボックスを選択し、OKをクリックします。
    HWJEE052JavaEEAppSupport

    モジュールフォルダに作成された記述子ファイル META-INF/application.xml に注意してください。

    HWJEE053AppXMLInProject
  3. エディタ(F4)でファイルを開きます。
    HWJEE054AppXMLInEditor

    現時点では、ファイルはほとんど空です。

  4. 次に、アーティファクトの設定を見てみましょう。

    新しい構成が現れました。これは、展開されたEAR成果物のものです。

    HWJEE055Artifacts

    現時点では、JavaEEアプリケーションファセットリソース(META-INF/application.xml)のみがアーティファクトに含まれています。

    HWJEE056ExplodedEARInitial
  5. 展開されたWARアーティファクトのコピーをEARアーティファクト構造に追加しましょう。これを行うには、使用可能な要素の下で、成果物ノードを展開し、展開されたWARアーティファクトをダブルクリックします。ここに結果があります。
    HWJEE057ExplodedEARWithWAR

    (同じ結果を得る別の方法は、 icons general add svg | 成果物 | JavaEEHelloWorld: war 展開です: )

  6. メッセージWebファセットはapplication.xmlに登録されていませんに注意してください。 修復をクリックします。 (ちょっと後で、この簡単な修正によって application.xml の変更点を見ていきます。)

  7. EAR成果物の構成を作成します: icons general add svg | JavaEE アプリケーション: アーカイブ | 'JavaEEHelloWorld:ear exploded'の場合

    HWJEE058NewEAR

  8. マニフェストファイルを作成するには、マニフェストの作成をクリックし、デフォルトのファイル位置(<project_folder>/META-INF/MANIFEST.MF)に同意します。

    HWJEE059EARStructure

  9. プロジェクト構造ダイアログでOKをクリックします。

    application.xml が変更されていることを確認してください。これはクイックフィックスを適用した結果です。

    HWJEE060AppXMLChanged

    ここで、EAR成果物の構築と展開のための実行構成を作成しましょう。

  10. 実行コンフィギュレーションセレクタをクリックし、構成の編集を選択します。次に、実行/デバッグ構成ダイアログで、 icons general add svg | GlassFish サーバー | リモートを選択します。

  11. 実行コンフィギュレーションにわかりやすい名前を指定します。 GlassFishRemoteEAR

    HWJEE061NewRunConfigName

  12. デプロイリストにEARアーティファクトを含めます:デプロイタブに切り替え、 icons general add svg | 成果物 | JavaEEHelloWorld:耳を選択します。

    ビルド 'JavaEEHelloWorld:耳'アーティファクトタスクは自動的に起動前タスクリストに含まれます。

    HWJEE062RunConfigDeployEAR
  13. サーバータブに切り替えて、ブラウザーを開くセクションのURLを確認します。 http://localhost:8080/ に続く部分は、 application.xml<context-root> 要素に対応する必要があります。

    HWJEE063RunConfigURL

  14. 実行/デバッグ構成ダイアログでOKをクリックします。

  15. 実行コンフィギュレーション(icons toolwindows toolWindowRun svg)を実行します。

    前と同じように、実行ツールウィンドウに別のタブが開き、実行コンフィギュレーションの出力が表示されます。

    HWJEE064RunEAR

    次に、アプリケーションの出力がブラウザに表示されます。

    HWJEE065EARHelloInBrowser

    プロジェクトツールのウィンドウを見ると、 out/artifacts/JavaEEHelloWorld_ear フォルダにアーカイブが表示されます。

    HWJEE066EARInProject

他の機能(ツールウィンドウとファセット)を見る

WebアプリケーションとJava EEアプリケーションのサポートの一環として、 IntelliJ IDEA:

  • ウェブおよびJavaEE:Appツールウィンドウを利用可能にしました。

  • WebおよびJava EEアプリケーションのファセットを作成しました。

ツールウィンドウ。ツールウィンドウを開くには、たとえば、表示 | ツール・ウィンドウ | ウェブまたは表示 | ツール・ウィンドウ | JavaEE:Appを選択します。

非常に簡単に言えば、ウェブJavaEE:Appのツールウィンドウは、プロジェクトツールウィンドウの機能と似ていますが、それぞれあなたのWebとJava EEアプリケーションのファセットリソースにしか対応していません。詳細については、以下を参照してください。

ファセット。ファセット設定を表示または編集するには、プロジェクト構造ダイアログを開き、モジュールを選択し、モジュールノードの下のウェブまたはjava EEApplicationを選択します。詳細については、以下を参照してください。

最終更新日: 2018年10月25日

関連事項