はじめに
Java EE の勉強を始めたばかりの方向けに、1時間ぐらいで、簡単な、アカウント登録、編集、削除処理が行なえる、JavaEE Webアプリケーションを作るチュートリアル2<プロジェクトを作る>です。チュートリアル1<開発環境を作る>をまず実施してもらうことをお勧めします。
<チュートリアル2は作成中>
作るものは、こんなやつ
<画面準備中>
大まかな流れ
- チュートリアル1<開発環境を作る>
- 1.開発環境のインストール
- 2.DB設計
- チュートリアル2<プロジェクトを作る>
- 3.Java Web プロジェクト作成
- 4.アプリケーションサーバーリソース設定
- チュートリアル3<プログラムを作る>
- 5.プログラム
- 6.アプリケーションの実行
- 7.アプリケーションのカスタマイズ
3. Java Web プロジェクト作成
チュートリアル1で開発環境が整ったので、チュートリアル2では「JavaEE Webアプリケーション」作りに入ります。
まずは、チュートリアル1の1−2でインストールしたNetbeansを起動してください。
3-1. Maven Webプロジェクトを作成
NetBeansが起動したら、上部のメニューから「ファイル>新規プロジェクト」を選択し、新規プロジェクトダイアログを表示させます。
ステップ「プロジェクト選択」で、プロジェクト一覧から、「カテゴリ:Maven、プロジェクト:Webアプリケーション」プロジェクトを選択し「次>」を押下します。
「JavaEE Webアプリケーション」のプログラムをNetbeansで作成するには、他にも「カテゴリ:Java Web、プロジェクト:Webアプリケーション」プロジェクトや「カテゴリ:Java EE、プロジェクト:エンタープライズ・アプリケーション」などを利用する方法もありますが、簡単かつ実用的なJavaEE Webアプリを作る場合「Maven Webアプリケーション」プロジェクトを利用するのが良いと思います。
ステップ「名前と場所」で、プロジェクト名の設定のみ行います。任意のプロジェクト名を入力してください。「次>」を押下します。
ステップ「設定」で、サーバーの設定と、Java EEバージョンの選択を行います。めんどくさければ、Netbeansに初期インストールされている「GlassFish Server」を選択しこのまま「終了」ボタンを、押下することもできます。
ここではちょっと寄り道し、チュトーリアル1の「1-3.Payara Serverをインストールする」でダウンロードした「Payara Server」を追加選択してみましょう。「サーバー」選択リストの右にある「追加」ボタンを押下してください。
サーバーインスタンスの追加ダイアログが表示されます。Payara Serverは、GlassFishベースなので「サーバー:GlassFish Server」を選択し、「名前:任意のサーバー名」を入力してください。ここで入力したサーバー名は今後よく使うことになるので、サーバーアプリケーション名、バージョン名などを取り込んだ名前にすることをオススメします。「次>」ボタンを押下します。
ステップ「サーバーの場所」ではサーバーのインストール場所を指定します。チュトーリアル1の「1-3.Payara Serverをインストールする」でダウンロードした「Payara Server」を解凍したフォルダを指定してください。(指定するフォルダの直下には、bin,glassfish,javadbなどのフォルダがあることも確認しておいてください。)
ステップ「ドメイン名/場所」では、ドメイン名を選択します。初期状態では「domain1」になっていると思います。特に問題なければそのまま「終了」を押下してください。
「Payara」サーバーがリストに追加されています。追加した「Payara」サーバーを選択してください。Java EEバージョンが「Java EE 7 Web」になっていることを確認し「終了」を押下してください。
以上で、いったんプロジェクトの作成が完了しています。画面左上部にあるプロジェクトタブに、設定したプロジェクトが表示されていることを確認してください。
この段階でプロジェクトアイコンの右上に、小さな黄色い注意マークが表示されていることがあります。プロジェクトにいくつかの問題があることを知らせているので、その問題点を修正します。
プロジェクトを右クリックしコンソールメニューを表示し、最下部にある「プロパティー」を選択します。
表示された「プロジェクト・プロパティ」ダイアログで以下のカテゴリのいくつかの項目を設定します。
カテゴリ「ソース」
これは問題ではないと思うのですが、いつもの癖で、ソース/バイナリ形式は最新の「1.8」を選択してみます。
カテゴリ「フレームワーク」
本チュートリアルのタイトルにもなっている表示用フレームワークのデファクトとも言える「PrimeFaces」を追加します。「追加」ボタンを押下してください。
フレームワークの追加ダイアログが表示されます。「JavaServer Faces」を選択し、「OK」を押下します。
JavaServer Facesの構成「ライブラリ」で、最新のサーバー・ライブラリ「JSF 2.2」を選択します。
JavaServer Facesの構成「コンポーネント」で、「PrimeFaces」を選択します。
カテゴリ「コンパイル」
Javaプラットフォームで最新の「JDK 1.8」を選択、初期状態では「JDK1.7」が選択されているが、このままだと問題となることが多いので、これは必須な選択と思います。
以上で、問題対応は終わり「OK」ボタンを押下してください。
4.アプリケーションサーバーリソース設定
4-1. MySQL Connector/Jライブラリの配置
MySQLデータベースをアプリケーションサーバーから使うために必要な、アプリケーションサーバーのJDBCリソース設定を行います。
先ほど追加した「Payara Server」配下の「glassfish/lib」フォルダに、「Download Connector/J」から
ダウンロードした最新版の「MySQL Connector/Jライブラリ(執筆時の最新版は、mysql-connector-java-5.1.40-bin.jar)」をコピー配置してください。
4-2. Payara Serverの起動&ドメイン管理コンソールの表示
ライブラリを配置したら、Netbeansの左上部にあるサービスタブを選択し、サーバーの中に表示されている
先ほど追加したPayaraサーバを右クリックして、表示されたメニューから「起動」を選択します。
起動中は、サーバーアイコンの右下に、砂時計が表示され、起動が完了すると緑色の▶︎マークに変わります。
サーバーが起動したら
もう一度Payaraサーバを右クリックして、表示されたメニューから「ドメイン管理コンソールの表示」を選択します。
しばらくすると、「ドメイン管理コンソール」が表示されます。
4-3. JDBC Connection Poolsの追加
チュートリアル1で作成した「tutorial_db」に接続するJDBC Connection Poolを作成します。
ドメイン管理コンソールの左側の「CommonTasks」ツリーメニュー
Resource > JDBC > JDBC Connection Pools を選択
表示されたConnection Poolsの一覧上部にある「New」ボタンを押下します。
「New JDBC Connection Pool(Step 1 of 2)」画面が表示されるので
以下のように入力/選択したのち、「Next」ボタンを押下します。
Pool Name | tutorial_db_pool |
---|---|
Resource Type | javax.sql.DataSource |
Database Driver Vendor | MySql |
「New JDBC Connection Pool (Step 2 of 2)」画面が表示されるので
画面下部にスクロールし、「Additional Properties」で以下の項目を探して、値(Value)を設定したのち、「finish」ボタンを押下します。
DatabaseName | tutorial_db |
---|---|
Encoding | UTF-8 |
Password | ユーザパスワード(rootパスワード) |
URL | jdbc:mysql://127.0.0.1:3306/tutorial_db?zeroDateTimeBehavior=convertToNull |
Url | jdbc:mysql://127.0.0.1:3306/tutorial_db?zeroDateTimeBehavior=convertToNull |
User | ユーザ名(root) |
「JDBC Connection Pools」画面が再度表示され、一覧に「tutorial_db_pool」が表示されていることを確認します。確認できたら、「tutorial_db_pool」のリンクを押下します。
「Edit JDBC Connection Pool」画面が表示されます。上部にある「Ping」ボタンを押下し接続をテストします。
「Ping Succeeded」が出たら成功です。
4-4. JDBC Resourceの追加
作成した「tutorial_db_pool」に接続するJDBC Resourceを作成します。
ドメイン管理コンソールの左側の「CommonTasks」ツリーメニュー
Resource > JDBC > JDBC Resource を選択
表示されたResourcesの一覧上部にある「New」ボタンを押下します。
「New JDBC Resource」画面が表示されるので
以下のように入力/選択したのち、「OK」ボタンを押下します。
JNDI Name | jdbc/tutorial_db |
---|---|
tutorial_db_pool | javax.sql.DataSource |
Description | チュートリアルDB用JDBCリソース |
JDBC Resources一覧画面に戻り「jdbc/tutorial_db」が表示されていれば、JDBCリソースの準備完了です。
4-5.NetbeansからのDB接続の確認
JDBCリソースの準備ができたら、Netbeansからの接続を確認します。Netbeansの左上部にあるサービスタブを選択し、データベースの中に表示されている「MySQLサーバー」を展開します。
先ほど追加した「tutorial_db」を右クリックして、表示されたメニューから「接続」を選択します。
下図のような「tutorial_db」の接続ができ、「account_table」テーブルの表示が確認できたら接続できています。
次回からはいよいよプログラムです。