仕事でJSFを使うので、独学でも触りたいと思い、環境構築しました。
開発環境
Windows10 home
Java SE8
netbeans 8
GlassFish 4.1.1
Javaのインストール
こちらのサイトから、Java SE 8をインストールします。
最新版のJDKだと、netbeansをインストールする際にエラーが排出されてしまう為、SE 8をインストールしましょう。
環境変数の設定
次に、「コントロールパネル」→「システムとセキュリティ」→「システム」の「システムの詳細設定」から環境変数の設定を行います。
「システム環境変数」の中に「Path」という変数があるので、編集ウィンドウから新規ボタンを押してJDKをインストールした場所のbinディレクトリのパスを追加します。
「Path」に追加後、コマンドプロンプトを立ち上げ、javac
とコマンドを打って、きちんと環境変数が設定できているか、確認します。
以下のコマンドが表れれば、OKです。
Picked up _JAVA_OPTIONS: -Djava.net.preferIPv4Stack=true
使用方法: javac <options> <source files>
使用可能なオプションには次のものがあります。
@<filename> ファイルからの読取りオプションおよびファイル名
-Akey[=value] 注釈プロセッサに渡されるオプション
--add-modules <module>(,<module>)*
初期モジュールに加えて解決するルート・モジュール、または<module>が
ALL-MODULE-PATHである場合はモジュール・パスのすべてのモジュール。
--boot-class-path <path>, -bootclasspath <path>
ブートストラップ・クラス・パスの位置をオーバーライドする
--class-path <path>, -classpath <path>, -cp <path>
ユーザー・クラス・ファイルおよび注釈プロセッサを検索する位置を指定する
-d <directory> 生成されたクラス・ファイルを格納する位置を指定する
-deprecation 推奨されないAPIが使用されているソースの位置を出力する
--enable-preview プレビュー言語機能を有効にします。-sourceまたは--releaseとともに使用されます。
-encoding <encoding> ソース・ファイルが使用する文字エンコーディングを指定する
-endorseddirs <dirs> 推奨規格パスの位置をオーバーライドする
-extdirs <dirs> インストール済み拡張機能の位置をオーバーライドする
-g すべてのデバッグ情報を生成する
-g:{lines,vars,source} いくつかのデバッグ情報のみを生成する
-g:none デバッグ情報を生成しない
-h <directory> 生成されたネイティブ・ヘッダー・ファイルを格納する場所を指定する
--help, -help, -? このヘルプ・メッセージを出力します
--help-extra, -X 追加オプションのヘルプを出力します
-implicit:{none,class} 暗黙的に参照されるファイルについてクラス・ファイルを生成するかどうかを指定する
-J<flag> <flag>を実行システムに直接渡す
--limit-modules <module>(,<module>)*
参照可能なモジュールの領域を制限します
--module <module>(,<module>)*, -m <module>(,<module>)*
指定したモジュールのみコンパイルし、タイムスタンプを確認する
--module-path <path>, -p <path>
アプリケーション・モジュールを検索する位置を指定する
--module-source-path <module-source-path>
複数モジュールの入力ソース・ファイルを検索する位置を指定する
--module-version <バージョン> コンパイルするモジュールのバージョンを指定します
-nowarn 警告を発生させない
-parameters メソッド・パラメータにリフレクション用のメタデータを生成します
-proc:{none,only} 注釈処理やコンパイルを実行するかどうかを制御します。
-processor <class1>[,<class2>,<class3>...]
実行する注釈プロセッサの名前。デフォルトの検出処理をバイパス
--processor-module-path <path>
注釈プロセッサを検索するモジュール・パスを指定する
--processor-path <path>, -processorpath <path>
注釈プロセッサを検索する位置を指定する
-profile <profile> 使用されているAPIが指定したプロファイルで使用可能かどうかを確認します
--release <release>
指定されたJava SEリリースに対してコンパイルします。サポートされているリリース: 7, 8, 9, 10, 11, 12, 13, 14, 15
-s <directory> 生成されたソース・ファイルを格納する場所を指定する
--source <release>, -source <release>
指定されたJava SEリリースとソースの互換性を保持します。サポートされているリリース: 7, 8, 9, 10, 11, 12, 13, 14, 15
--source-path <path>, -sourcepath <path>
入力ソース・ファイルを検索する位置を指定する
--system <jdk>|none システム・モジュールの位置をオーバーライドする
--target <release>, -target <release>
指定されたJava SEリリースに適したクラス・ファイルを生成します。サポートされているリリース: 7, 8, 9, 10, 11, 12, 13, 14, 15
--upgrade-module-path <path>
アップグレード可能なモジュールの位置をオーバーライドする
-verbose コンパイラの動作についてメッセージを出力する
--version, -version バージョン情報
-Werror 警告が発生した場合にコンパイルを終了する
続いて、システム環境変数に「JAVA_HOME」という変数を追加します。
値はJDKをインストールした場所のパスになります。
追加後、コマンドプロンプトでset JAVA_HOME
と入力し、以下のようになればOKです。
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_181
netbeansをインストール
こちらのサイトから、netstat8をインストールします。
GlassFishをインストール
続いて、webサーバーであるGlassFishをこちらのサイトから、4.1.1のzipファイルをダウンロードします。
zipファイルは特定の場所に解凍すればOKです。
Java Webアプリケーションの設定
netbeansを立ち上げ、いよいよプロジェクトの作成!...の前に、以下の設定を行います。
まず、「ツール」バーから「プラグイン」を選択します。
「使用可能なプラグインタブ」を開き、「Java EE」と検索し、Java EE Baseのボックスにチェックを入れ、「インストール」をクリックします。
インストールが完了したら、再起動を促すメッセージが表れるので、netbeansを再起動させます。
プロジェクトを作成
再起動したら、いよいよプロジェクトの作成です。
ファイル->新規プロジェクトを選択し、カテゴリとプロジェクトを下図のように選択します。
「次」を押すと、プロジェクト名とプロジェクトを格納するパスを指定します。
続いて、サーバーを指定します。
ここでは、GlassFishを使用します。
「次」を押すと、サーバーの場所を指定します。
ここで、GlassFishをインストールした場所を指定するのですが、\glassfish4\glassfishになるように指定し、「ライセンス契約を読んで同意しました」にチェックを入れます。
最後にドメイン名を指定し、「終了」を押せば、サーバーの設定は完了です。
続いて、フレームワークを指定します。
ここでは「Java Server Faces」にチェックを入れます。
これで、プロジェクトの作成は完了です。
Hello World的なものを表示させる
プロジェクトバーにあるプロジェクト名を右クリックし、「実行」を押せば、サーバーが立ち上がり、プロジェクトが実行されます。
無事、「Hello from Facelets」というテキストが表示されました!
まとめ
JSFは古めのフレームワークだからか、書籍やネットの記事がかなり少ない為、初心者にはとっつきにくいと思います。
しかし、使う現場はある程度あったり、MVC構造の勉強になるので、使ってみてはいかがでしょうか。
参考文献と引用
【Win10】NetBeansでJSFの開発環境を構築する
GlassFish 4.0のインストールとNetBeans 8.0の連携
NetBeansでJava Webアプリケーションを作成できません