Java EE 7アプリケーションを動作確認するには、Java EE 7アプリケーションをサーバに配備し、サーバを起動します。これらの操作はサーバビューで行います。サーバを起動すると、Java EE 7アプリケーションは、クライアントからの呼び出しを待ちます。クライアントからJava EE 7アプリケーションを呼び出すことで動作確認を行います。
また、プログラムの実行を中断してコードを1行ずつ実行したり、変数の値を確認したりするには、デバッグを行います。
注意
以下の環境でアプリケーションの配備操作を行うと、各ユーザーの作業フォルダ(例:C:\Users\ユーザ名\AppData\Local\Temp)配下に、一時的に配備用のアーカイブファイル(EAR/WARなど)を作成します。空きディスク容量をご用意ください。
リモートサーバに配備する場合
サーバページ([サーバー]ビューで対象のサーバ選択して、コンテキストメニュー > [プロパティー] > [Interstage Application Server]を選択)で[JARアーカイブを作成してから配備する]がチェックされているlocalhostに配備する場合
同一サーバに、コンテキストルートが同じ複数のWebアプリケーションは配備できません。
配備した場合、以下のメッセージが表示され、配備に失敗します。
cannot Deploy XXXXXX
deploy is failing=Error occurred during deployment: Application XXXXXX is referenced by more than one targets. Please remove other references or specify all targets (or domain target if using asadmin command line) before attempting redeploy operation. Please see server.log for more details.
サーバを操作するための準備をする
ワークベンチでサーバの起動や停止などの操作を行うためには、アプリケーションの動作確認を行う配備先をサーバとして定義します。配備先の準備については、"6.2.1 アプリケーションの動作確認を行う配備先の準備"を参照してください。
サーバを追加する
動作確認を行うアプリケーションの配備先となるサーバをサーバビューに追加します。サーバの追加には新規サーバウィザードを使用します。サーバビューを右クリックし、コンテキストメニューから[新規] > [サーバー] を選択してください。ウィザードの設定項目については以下の内容を参考にしてください。
サーバーのタイプを選択
サーバのタイプを選びます。
Interstage Application ServerのJava EE 7アプリケーション実行環境の場合は、[FUJITSU LIMITED] > [Interstage Application Server V12.0 (Java EE 7)]を選択します。
サーバーのホスト名
サーバがあるホストの名前を指定します。ローカルマシンの場合は"localhost"を指定します。リモートマシンの場合はホスト名(IPアドレス)を指定します。
サーバー名
以下の形式で表示されます。
「ホスト名のサーバタイプ名」
サーバー・ランタイム環境
サーバのタイプに対応するランタイム設定を指定します。サーバランタイム環境はプロジェクトのターゲットランタイムと一致させる必要があります。
Interstage Application ServerのJava EE 7アプリケーション実行環境の場合は、[Interstage Application Server V12.0 (Java EE 7)]を選択します。
再配備間のセッションを維持する
再配備時に、セッションを継続して保持する場合に指定します。
この機能は配備先がInterstage Java EE 7 DASサービス、かつ、サーバページの[JARアーカイブを作成してから配備する]がチェックされていない場合に有効です。
運用管理用HTTPリスナーポート
ホスト名にlocalhostが指定された場合は、サーバから取得した運用管理用HTTPリスナーポート番号が表示されます。ホスト名にlocalhost以外が指定された場合は、12021が表示されます。この値はサーバの設定に合わせる必要があります。サーバの設定はasadminコマンドで確認することができます。
例) asadmin get server.network-config.network-listeners.network-listener.admin-listener.port
IJServerクラスタの選択
サーバビューで操作するIJServerクラスタを選択します。ローカルマシンの場合は、Interstage Java EE 7 DASサービスを使用することができます。Interstage Java EE 7 DASサービスを使用する場合は、"server"を選択してください。
HTTPリスナーポート番号
サーバから取得した値が表示されます。
サーバからのポート番号取得に失敗(タイムアウト)した場合、選択されたIJServerクラスタやプロトコルに応じてデフォルト値が設定されます。
Interstage Java EE 7 DASサービスのHTTPプロトコルの場合:28484
Interstage Java EE 7 DASサービスのHTTPSプロトコルの場合:28585
IJServerクラスタのHTTPプロトコルの場合:28494
IJServerクラスタのHTTPSプロトコルの場合:28595
サーバの設定に合わせて変更してください。サーバの設定はasadminコマンドで確認してください。
例) 上段:HTTPリスナーポート、下段:HTTPSリスナーポート
<Interstage Java EE 7 DASサービスの場合>
asadmin get server.network-config.network-listeners.network-listener.http-listener-1.port
asadmin get server.network-config.network-listeners.network-listener.http-listener-2.port
<IJServerクラスタ(インスタンス名が"instance001")の場合>
asadmin get instance001.system-property.HTTP_LISTENER_PORT.value
asadmin get instance001.system-property.HTTP_SSL_LISTENER_PORT.value
デバッグポート番号
サーバから取得した値が表示されます。
サーバからのポート番号取得に失敗(タイムアウト)した場合、選択されたIJServerクラスタに応じてデフォルト値が設定されます。サーバやIJServerクラスタに合わせて変更してください。
Interstage Java EE 7 DASサービスの場合、9009が設定されます。asadminコマンドでInterstage Java EE 7 DASサービスの設定を確認して、デバッグポート番号に指定してください。
サーバの設定はasadminコマンドで確認してください。
asadmin get server.java-config.debug-options
IJServerクラスタの場合、29009が設定されます。netstatコマンドなどでサーバの空きポート番号を確認して、デバッグポート番号に指定してください。
HTTPポート番号
接続確認に使用するHTTPサーバのポート番号を指定します。ホスト名と選択されたIJServerクラスタに応じてデフォルト値が表示されます。サーバ側の設定に合わせて変更してください。
配備先がlocalhostのInterstage Java EE 7 DASサービスの場合、HTTPリスナーポートと同じ値を指定してください。これはInterstage Java EE 7 DASサービスのデフォルトがWebサーバコネクタ連携しない設定であるためです。
配備先がlocalhostのIJServerクラスタの場合、インストール時に「Webサーバ(Interstage HTTP Server 2.2)」に指定した値を指定してください。
配備先にlocalhost以外のIJServerクラスタを指定する場合
接続先サーバの環境に応じた値を指定してください。
Interstage HTTP Server 2.2とWebサーバコネクタ連携している場合はInterstage HTTP Server 2.2のポート番号を指定してください。サーバの設定はInterstage Application Serverのインストール先の\F3FMahs\conf\httpd.confファイルのListenディレクティブの値を参照してください。
例) C:\Interstage\F3FMahs\conf\httpd.conf
Interstage HTTP Server 2.2とWebサーバコネクタ連携していない場合、IJServerクラスタのHTTPSリスナーポート番号の値を指定してください。
ポイント
サーバの追加は、新規ウィザードからも行うことができます。
リモートサーバの管理者名、管理者パスワードなど、Interstage Application ServerのJava EE 7運用環境に関する詳細は、"Interstage Application Server Java EE 7 設計・構築・運用ガイド"を参照してください。
追加したサーバの情報は、サーバページで変更できます。
サーバページの[Webサーバプロトコル]は、[サーバー]で配備したアプリケーションを選択してコンテキストメニュー > [Webブラウザ]で開くURLのプロトコルを指定します。
接続先のInterstage Java EE 7 DASサービスまたはIJServerクラスタがInterstage HTTP Server 2.2とWebサーバコネクタ連携していない場合、[運用プロトコルと一致]を指定してください。
接続先のInterstage Java EE 7 DASサービスまたはIJServerクラスタがInterstage HTTP Server 2.2とWebサーバコネクタ連携している場合、Interstage HTTP Server 2.2の設定を確認して、[HTTP]または[HTTPS]を指定してください。
Interstage HTTP Server 2.2の設定については、"Interstage HTTP Server 2.2 運用ガイド"の"SSLの設定"を参照してください。
注意
「サーバーのホスト名」に"localhost"以外を指定した場合は、リモートサーバと見なします。
サーバビューでのサーバ操作とコマンドによるサーバ操作を併用すると、配備などの際にエラーになる場合があります。
[新規サーバー]ウィザードの[サーバーのホスト名]にリモートサーバを指定し、[ログイン]ダイアログボックスに正しいユーザー名とパスワードを入力してもログインに失敗する場合、[ウィンドウ]メニュー > [設定] > [一般] > [ネットワーク接続]のプロキシー設定を確認してください。
サーバに配備するプロジェクトを指定する
サーバに配備するプロジェクトの指定は、プロジェクトをサーバビューのサーバに追加することによって行います。サーバに配備するプロジェクトを追加するには、追加および除去ウィザードを使用します。追加および除去ウィザードを起動するには、サーバビューでサーバを選択し、コンテキストメニューから[追加および除去]を選択してください。
新規サーバウィザードの最後のページでプロジェクトを追加することもできます。
ポイント
状況の左に[始動済み]と表示されていて、[追加および除去]ダイアログボックスの[サーバーが始動されている場合は変更を即時公開]がチェックされている場合、[追加および除去]ダイアログボックスでの指定は、すぐにサーバに反映されます。
状況や[サーバーが始動されている場合は変更を即時公開]のチェックに関わらず、除去の場合にはすぐにサーバに反映されます。
手動でアプリケーションを配備するには、サーバを選択し、コンテキストメニューより[公開]を選択します。
[クリーン]を用いると、配備されているアプリケーションを一度すべて破棄し、配備しなおします。
アプリケーションがサーバと同期している場合は、状況に「同期済み」と表示されます。同期していない場合は、「再公開」と表示されます。
注意
状況の左に[停止]と表示されている場合や[追加および除去]ダイアログボックスの[サーバーが始動されている場合は変更を即時公開]がチェックされていない場合、[追加および除去]ダイアログボックスでの指定は、手動で反映させる必要があります。サーバを選択し、コンテキストメニューより[公開]を選択してください。
アプリケーションを除去した場合、サーバビューからはアプリケーションが表示されなくなりますが、[公開]を選択するまでは、サーバにアプリケーションが配備されていますので、ご注意ください。
サーバビューのサーバは、プロジェクトのターゲットランタイムに応じたサーバを指定してください。
例えば、プロジェクトのターゲットランタイムに"Interstage Application Server V12.0 (Java EE 7)"が設定されている場合には、サーバのタイプに"Interstage Application Server V12.0 (Java EE 7)"が選択されたサーバを指定してください。
サーバを起動する
サーバビューでサーバを選択し、コンテキストメニューから[接続(デバッグ始動)/ログイン]、[接続/ログイン]、[開始]、[デバッグ]のどれかを選択します。
アプリケーションを配備する場合には、サーバ起動後にコンテキストメニューから[公開]を選択してください。
ポイント
IJServerクラスタに未接続の場合には、サーバビューでのIJServerクラスタの[状態]欄に何も表示されず、起動や停止といった操作が行えません。そのような場合にはサーバビューでそのIJServerクラスタを選択し、コンテキストメニューから[接続/ログイン]または[接続(デバッグ始動)/ログイン]を選択してIJServerクラスタへの接続を行ってください。
IJServerクラスタに接続済みの状態で、プロジェクトを選択し、コンテキストメニューから[実行] > [サーバーで実行]または[デバッグ] > [サーバーでデバッグ]を選択することで、サーバの追加、プロジェクトの追加、サーバの起動、クライアントの起動をまとめて行うことができます。
IJServerクラスタが停止の状態で、[実行] > [実行構成]または[実行] > [デバッグの構成]から、サーバを起動することもできます。
サーバ起動時に自動的に配備しないようにするには、設定ページの[サーバー] > [起動]を選択し、[サーバーの始動時に自動的に公開]をオフにします。
サーバを停止する
サーバを停止するには、サーバビューでサーバを選択して、ツールバーの[サーバーを停止]を選択します。
ここでは、プログラムにおける論理エラーの検出に用いられるデバッグについて説明します。
アプリケーションをデバッグするには、ブレークポイントを設定して、起動されたプログラムを中断し、コードを1行ずつ実行し、変数の内容を確認することによって行います。
ブレークポイントを設定した行でプログラムの実行が中断します。実行が中断されると、デバッグパースペクティブを開くかどうかの確認ダイアログボックスが表示されます。デバッグパースペクティブは、デバッグする際に利用するデバッグビュー、変数ビュー、ブレークポイントビューなどがレイアウトされています。
ブレークポイントを設定・解除する
ブレークポイントの設定と解除は、エディタのルーラー部分をダブルクリックして切り替えます。また、追加されているブレークポイントの確認や、ブレークポイントの削除をブレークポイントビューで行うこともできます。
ブレークポイントを無効にする
ブレークポイントを一時的に無効にするには、ルーラーのコンテキストメニューで[ブレークポイントを使用不可にする]を選択するか、ブレークポイントビューでチェックを外します。また、すべてのブレークポイントを一時的にスキップするようにするには、ブレークポイントビューのツールバー、または、メニューバーの[実行]で、[すべてのブレークポイントをスキップ]を選択します。
注意
JSPファイルにブレークポイントを設定した場合、異なるフォルダにある同名のJSPファイルでも実行が中断します。
実行制御
実行を中断したプログラムを再度実行する方法には、ステップオーバ、ステップイン、ステップリターン、再開などがあります。これらのコマンドは、デバッグビューでスタックフレームを選択し、デバッグビューのツールバー、コンテキストメニュー、または、メニューバーの[実行]から行います。
変数の値の確認と変更
スタックフレームを選択すると、そのスタックフレームで可視になっている変数を変数ビューに表示できます。
変数ビューには、プリミティブ型の値が表示されます。複雑な変数は、それを展開してそのメンバを表示すれば検査できます。値の変更は、コンテキストメニューの[値の変更]から行います。
ポイント
変数の値を参照するなどのデバッグを行うには、コンパイルされたクラスファイルにデバッグ情報を追加する必要があります。デフォルトでは、デバッグに必要なデバッグ情報はクラスファイルに追加する設定になっています。運用環境に配布する場合などで、デバッグを行う必要が無い場合はデバッグ情報を追加せずに、クラスファイルのサイズを小さくすることができます。
例外がスローされたときなどに出力するスタックトレースでは、ソースファイル名の表示と行番号の表示に、デバッグ情報を使います。行番号属性とソースファイル名はクラスファイルに追加することをお勧めします。
サーバビューのコンテキストメニューで[管理コンソール]を選択すると、エディタ領域にInterstage Java EE 7管理コンソールが表示されます。
Interstage Java EE 7管理コンソールの表示には、内部Webビューアが利用されます。内部Webビューアは、Webサーバ上のページを表示するために使用される組み込みのブラウザです。
内部Webビューアには、アドレスバーとツールバーが用意されています。
アドレスバー
アドレスバーには、表示するページのURLを入力する[アドレス]フィールドと以下のボタンが表示されます。
ボタン | コマンド | 説明 |
---|---|---|
移動 | 入力したURLのページに移動します。 |
ツールバー
ツールバーには、以下のボタンが表示されます。
ボタン | コマンド | 説明 |
---|---|---|
戻る | 内部Webビューアで直前に表示していたページに戻ります。 | |
進む | 内部Webビューアで[戻る]をクリックする前に表示していたページを再び表示します。 | |
停止 | 内部Webビューアで表示するページのロードを停止します。 | |
最新表示 | 内部Webビューアで表示しているページを再ロードします。 | |
文字のサイズ | 内部Webビューアで表示する文字の大きさを変更します。文字の大きさは、[最大]、[大]、[中]、[小]、[最小]の5種類の中から選択できます。 |
注意
内部WebビューアでInterstage Java EE 7管理コンソールを表示する場合、アドレスバーは表示されません。
サーバに未接続の場合は、サーバビューのコンテキストメニューから[管理コンソール]が選択できません。その場合は、コンテキストメニューから[接続/ログイン]または[接続(デバッグ始動)/ログイン]を行ってから[管理コンソール]を実行してください。
Windowsの一般ユーザ権限でJava EE 7アプリケーションを動作確認する手順を示します。
事前準備として管理者権限での操作が必要です。管理者権限でWindowsにログインし、以下の操作を行ってください。
Interstage基盤サービス操作ツールを起動します。
[Java EE 7実行環境を使用する]を選択し、[必須サービスのみ起動状態にする]ボタンがグレイ表示されていなければ、ボタンを押します。
さらに[スタートアップの種類の変更]ボタンを押します。
[スタートアップの種類]画面では、[デバッグに必要なサービス]の[自動]を選択し、[OK]をクリックします。
[閉じる]をクリックして、Interstage基盤サービス操作ツールを終了します。
Interstage Java EE 7 DASサービスが起動されていない場合は起動します。
例) asadmin start-domain
開発に使用するサーバとして、ローカルマシンにJava EE 7のIJServerクラスタを作成します。
IJServerクラスタは、Interstage Java EE 7管理コンソールまたはasadminコマンドを使用して作成してください。詳細は"6.2.1.1 IJServerクラスタを作成する"を参照してください。
Interstage Java EE 7 DASサービスを起動した状態でログオフします。
注意
Interstage Java EE 7 DASサービスの操作は管理者権限が必要です。
以降の操作は、一般ユーザ権限で可能です。
ワークベンチを起動し、[サーバー]ビューで[新規] > [サーバー]を実行し、[新規サーバー]ウィザードでlocalhostのサーバを作成します。
注意
[新規Interstage Application Server]で[ログイン]ボタンを押すと、ユーザ名とパスワードの入力を要求されます。Interstage Studioのインストール時に指定したJava EE 7機能の管理ユーザIDと管理者パスワードを入力してください。
[IJServerクラスタの選択]では、事前準備で作成したIJServerクラスタを選択します。
作成したIJServerクラスタにアプリケーションを配備して実行/デバッグを行います。