Java EE 6アプリケーションを動作確認するには、Java EE 6アプリケーションをサーバに配備し、サーバを起動します。これらの操作はサーバビューで行います。サーバを起動すると、Java EE 6アプリケーションは、クライアントからの呼び出しを待ちます。クライアントからJava EE 6アプリケーションを呼び出すことで動作確認を行います。
また、プログラムの実行を中断してコードを1行ずつ実行したり、変数の値を確認したりするには、デバッグを行います。
注意
以下の環境でアプリケーションの配備操作を行うと、ワークスペースフォルダ配下に配備用のアーカイブファイル(EAR/WARなど)を作成します。空きディスク容量をご用意ください。
リモートサーバに配備する場合
サーバページ([サーバー]ビューで対象のサーバ選択してダブルクリック)で[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 6アプリケーション実行環境の場合は、[FUJITSU LIMITED] > [Interstage Application Server V12.2 (Java EE 6)]を選択します。
サーバーのホスト名
サーバがあるホストの名前を指定します。ローカルマシンの場合は"localhost"を指定します。リモートマシンの場合はホスト名(IPアドレス)を指定します。
サーバー名
以下の形式で表示されます。
「ホスト名のサーバタイプ名」
サーバー・ランタイム環境
サーバのタイプに対応するランタイム設定を指定します。サーバランタイム環境はプロジェクトのターゲットランタイムと一致させる必要があります。
Interstage Application ServerのJava EE 6アプリケーション実行環境の場合は、[Interstage Application Server V12.2 (Java EE 6)]を選択します。
再配備間のセッションを維持する
再配備時に、セッションを継続して保持する場合に指定します。
この機能は配備先がInterstage Java EE 6 DASサービス、かつ、サーバページの[JARアーカイブを作成してから配備する]がチェックされていない場合に有効です。
運用管理用HTTPリスナーポート
運用管理用HTTPリスナーポートを指定します。デフォルトのポート番号は12011です。サーバの設定に合わせる必要があります。サーバの設定はasadminコマンドで確認することができます。
例) asadmin get server.network-config.network-listeners.network-listener.admin-listener.port
HTTPリスナーポート
HTTPリスナーポート番号を指定します。デフォルトのポート番号は28282です。サーバの設定に合わせる必要があります。
サーバの設定はasadminコマンドで確認してください。SSL暗号化通信が有効な場合はHTTPSリスナーポートを、無効な場合はHTTPリスナーポートの番号を指定します。
SSL暗号化通信のデフォルトは、Interstage Studioがインストールするサーバでは無効になっています。
例) 上段:HTTPリスナーポート、下段:HTTPSリスナーポート
<Interstage Java EE 6 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
デバッグポート番号
デバッグに使用するポート番号を指定します。デフォルトのポート番号は9009です。
Interstage Java EE 6 DASサービスの場合、asadminコマンドでInterstage Java EE 6 DASサービスの設定を確認して、デバッグポート番号に指定してください。
asadmin get server.java-config.debug-options
IJServerクラスタの場合、netstatコマンドなどでサーバの空きポート番号を確認して、デバッグポート番号に指定してください。
HTTPポート番号
接続確認に使用するHTTPサーバのポート番号を指定します。インストール時に「Webサーバ(Interstage HTTP Server 2.2)」に指定した値が表示されるので、サーバの設定に合わせて変更してください。
localhostのInterstage Java EE 6 DASサービスの場合、HTTPリスナーポートと同じ値を指定してください。これはInterstage Java EE 6 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サーバコネクタ連携していない場合、上記の[HTTPリスナーポート]と同じ値を指定してください。
ポート番号を指定したら[ログイン]をクリックして、サーバにログインできるか確認してください。管理者名、管理者パスワードには、Interstage Java EE 6運用環境の管理者ユーザ、管理者パスワードを指定します。ログインできると[次へ]が有効になります。
IJServerクラスタの選択
サーバビューで操作するIJServerクラスタを選択します。ローカルマシンの場合は、Interstage Java EE 6 DASサービスを使用することができます。Interstage Java EE 6 DASサービスを使用する場合は、"server"を選択してください。
ポイント
サーバの追加は、新規ウィザードからも行うことができます。
リモートサーバの管理者名、管理者パスワードなど、Interstage Application ServerのJava EE 6運用環境に関する詳細は、"Interstage Application Server Java EE運用ガイド(Java EE 6編)"を参照してください。
追加したサーバの情報は、サーバページ([サーバー]ビューで対象のサーバをダブルクリック)で変更できます。
動作確認する際に、Webブラウザに指定するURLのプロトコル(http/https)は以下のとおりです。
Interstage HTTP Server 2.2とWebサーバコネクタ連携していないInterstage Java EE 6 DASサービスまたはIJServerクラスタで動作確認する場合、プロトコルはInterstage Java EE 6 DASサービスのSSL暗号化通信の設定に合わせてください。
Interstage StudioがインストールするInterstage Java EE 6 DASサービスのデフォルトは、SSL暗号化通信・Webサーバコネクタ連携ともに無効になっているため、"http"を指定します。
Interstage Java EE 6 DASサービスのSSL暗号化通信の設定については、asadminコマンドのenable-secure-admin/disable-secure-adminサブコマンドを参照してください。
Interstage HTTP Server 2.2とWebサーバコネクタ連携しているInterstage Java EE 6 DASサービスまたはIJServerクラスタで動作確認する場合、プロトコルはInterstage HTTP Server 2.2の設定に合わせてください。インストールのデフォルトではInterstage HTTP Server 2.2はSSL通信ではないため、"http"を指定します。
Interstage HTTP Server 2.2の設定については、"Interstage HTTP Server 2.2 運用ガイド"の"SSLの設定"を参照してください。
注意
「サーバーのホスト名」に"localhost"以外を指定した場合は、リモートサーバと見なします。
サーバビューでのサーバ操作とコマンドによるサーバ操作を併用すると、配備などの際にエラーになる場合があります。
[新規サーバー]ウィザードの[サーバーのホスト名]にリモートサーバを指定し、[ログイン]ダイアログボックスに正しいユーザー名とパスワードを入力してもログインに失敗する場合、[ウィンドウ]メニュー > [設定] > [一般] > [ネットワーク接続]のプロキシー設定を確認してください。
[サーバーのタイプを選択]で旧版のサーバタイプを選択する場合は、サーバタイプで選択したバージョンのInterstage Application Serverのクライアント機能がインストールされている必要があります。また、接続するサーバにはリモート環境にあるサーバを指定してください。
サーバに配備するプロジェクトを指定する
サーバに配備するプロジェクトの指定は、プロジェクトをサーバビューのサーバに追加することによって行います。サーバに配備するプロジェクトを追加するには、追加および除去ウィザードを使用します。追加および除去ウィザードを起動するには、サーバビューでサーバを選択し、コンテキストメニューから[追加および除去]を選択してください。
新規サーバウィザードの最後のページでプロジェクトを追加することもできます。
ポイント
状況の左に[始動済み]と表示されていて、[追加および除去]ダイアログボックスの[サーバーが始動されている場合は変更を即時公開]がチェックされている場合、[追加および除去]ダイアログボックスでの指定は、すぐにサーバに反映されます。
状況や[サーバーが始動されている場合は変更を即時公開]のチェックに関わらず、除去の場合にはすぐにサーバに反映されます。
手動でアプリケーションを配備するには、サーバを選択し、コンテキストメニューより[公開]を選択します。
[クリーン]を用いると、配備されているアプリケーションを一度すべて破棄し、配備しなおします。
アプリケーションがサーバと同期している場合は、状況に「同期済み」と表示されます。同期していない場合は、「再公開」と表示されます。
注意
状況の左に[停止]と表示されている場合や[追加および除去]ダイアログボックスの[サーバーが始動されている場合は変更を即時公開]がチェックされていない場合、[追加および除去]ダイアログボックスでの指定は、手動で反映させる必要があります。サーバを選択し、コンテキストメニューより[公開]を選択してください。
アプリケーションを除去した場合、サーバビューからはアプリケーションが表示されなくなりますが、[公開]を選択するまでは、サーバにアプリケーションが配備されていますので、ご注意ください。
サーバビューのサーバは、プロジェクトのターゲットランタイムに応じたサーバを指定してください。
例えば、プロジェクトのターゲットランタイムに"Interstage Application Server V12.2 (Java EE 6)"が設定されている場合には、サーバのタイプに"Interstage Application Server V12.2 (Java EE 6)"が選択されたサーバを指定してください。
サーバを起動する
サーバビューでサーバを選択し、コンテキストメニューから[接続(デバッグ始動)/ログイン]、[接続/ログイン]、[開始]、[デバッグ]のどれかを選択します。
アプリケーションを配備する場合には、サーバ起動後にコンテキストメニューから[公開]を選択してください。
ポイント
IJServerクラスタに未接続の場合には、サーバビューでのIJServerクラスタの[状態]欄に何も表示されず、起動や停止といった操作が行えません。そのような場合にはサーバビューでそのIJServerクラスタを選択し、コンテキストメニューから[接続/ログイン]または[接続(デバッグ始動)/ログイン]を選択してIJServerクラスタへの接続を行ってください。
IJServerクラスタに接続済みの状態で、プロジェクトを選択し、コンテキストメニューから[実行] > [サーバーで実行]または[デバッグ] > [サーバーでデバッグ]を選択することで、サーバの追加、プロジェクトの追加、サーバの起動、クライアントの起動をまとめて行うことができます。
IJServerクラスタが停止の状態で、[実行] > [実行構成]または[実行] > [デバッグの構成]から、サーバを起動することもできます。
サーバ起動時に自動的に配備しないようにするには、設定ページの[サーバー] > [起動]を選択し、[サーバーの始動時に自動的に公開]をオフにします。
サーバを停止する
サーバを停止するには、サーバビューでサーバを選択して、ツールバーの[サーバーを停止]を選択します。
ここでは、プログラムにおける論理エラーの検出に用いられるデバッグについて説明します。
アプリケーションをデバッグするには、ブレークポイントを設定して、起動されたプログラムを中断し、コードを1行ずつ実行し、変数の内容を確認することによって行います。
ブレークポイントを設定した行でプログラムの実行が中断します。実行が中断されると、デバッグパースペクティブを開くかどうかの確認ダイアログボックスが表示されます。デバッグパースペクティブは、デバッグする際に利用するデバッグビュー、変数ビュー、ブレークポイントビューなどがレイアウトされています。
ブレークポイントを設定・解除する
ブレークポイントの設定と解除は、エディタのルーラー部分をダブルクリックして切り替えます。また、追加されているブレークポイントの確認や、ブレークポイントの削除をブレークポイントビューで行うこともできます。
ブレークポイントを無効にする
ブレークポイントを一時的に無効にするには、ルーラーのコンテキストメニューで[ブレークポイントを使用不可にする]を選択するか、ブレークポイントビューでチェックを外します。また、すべてのブレークポイントを一時的にスキップするようにするには、ブレークポイントビューのツールバー、または、メニューバーの[実行]で、[すべてのブレークポイントをスキップ]を選択します。
注意
JSPファイルにブレークポイントを設定した場合、異なるフォルダにある同名のJSPファイルでも実行が中断します。
実行制御
実行を中断したプログラムを再度実行する方法には、ステップオーバ、ステップイン、ステップリターン、再開などがあります。これらのコマンドは、デバッグビューでスタックフレームを選択し、デバッグビューのツールバー、コンテキストメニュー、または、メニューバーの[実行]から行います。
変数の値の確認と変更
スタックフレームを選択すると、そのスタックフレームで可視になっている変数を変数ビューに表示できます。
変数ビューには、プリミティブ型の値が表示されます。複雑な変数は、それを展開してそのメンバを表示すれば検査できます。値の変更は、コンテキストメニューの[値の変更]から行います。
ポイント
変数の値を参照するなどのデバッグを行うには、コンパイルされたクラスファイルにデバッグ情報を追加する必要があります。デフォルトでは、デバッグに必要なデバッグ情報はクラスファイルに追加する設定になっています。運用環境に配布する場合などで、デバッグを行う必要が無い場合はデバッグ情報を追加せずに、クラスファイルのサイズを小さくすることができます。
例外がスローされたときなどに出力するスタックトレースでは、ソースファイル名の表示と行番号の表示に、デバッグ情報を使います。行番号属性とソースファイル名はクラスファイルに追加することをお勧めします。
Windowsの一般ユーザ権限でJava EE 6アプリケーションを動作確認する手順を示します。
事前準備として管理者権限での操作が必要です。管理者権限でWindowsにログインし、以下の操作を行ってください。
Interstage基盤サービス操作ツールを起動します。
[Java EE 6実行環境を使用する]を選択し、[必須サービスのみ起動状態にする]ボタンがグレイ表示されていなければ、ボタンを押します。
さらに[スタートアップの種類の変更]ボタンを押します。
[スタートアップの種類]画面では、[デバッグに必要なサービス]の[自動]を選択し、[OK]をクリックします。
[閉じる]をクリックして、Interstage基盤サービス操作ツールを終了します。
Interstage Java EE 6 DASサービスが起動されていない場合は起動します。
例) asadmin start-domain
開発に使用するサーバとして、ローカルマシンにJava EE 6のIJServerクラスタを作成します。
IJServerクラスタはasadminコマンドを使用して作成してください。詳細は"6.2.1.1 IJServerクラスタを作成する"を参照してください。
Interstage Java EE 6 DASサービスを起動した状態でログオフします。
注意
Interstage Java EE 6 DASサービスの操作は管理者権限が必要です。
以降の操作は、一般ユーザ権限で可能です。
ワークベンチを起動し、[サーバー]ビューで[新規] > [サーバー]を実行し、[新規サーバー]ウィザードでlocalhostのサーバを作成します。
注意
[新規Interstage Application Server]で[ログイン]ボタンを押すと、ユーザ名とパスワードの入力を要求されます。Interstage Studioのインストール時に指定したJava EE 6機能の管理ユーザIDと管理者パスワードを入力してください。
[IJServerクラスタの選択]では、事前準備で作成したIJServerクラスタを選択します。
作成したIJServerクラスタにアプリケーションを配備して実行/デバッグを行います。