PrimeFaces 8.0系のShowcaseのローカルビルド方法

# PrimeFaces 8.0系のShowcaseのローカルビルド方法

Eclipse系のツール、Spring Tool Suite 4 でのPrimeFace Showcaseをビルドする方法についてのメモです。

## Primefaces Showcase 配布元

Primefaces Showcaseの配布サイトは次の通りです。

https://github.com/primefaces/primefaces-showcase

## プロジェクトのインポート

以降の説明は、Pleiadesプラグインにより日本語化された状態での説明ですので、
そうでない場合、適宜読み替えてください。

適当なワークスペースに、プロジェクトをインポートするため、以下の操作を行います。
・メニューバー-ファイル-インポート

インポートのウィザードが始まりますので、Git/Gitからプロジェクトを選択し、次へボタンをクリックします。

![pic002.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/7b967e4b-792f-fff1-0e6f-67490ccd03bf.png)

リポジトリ・ソースの選択では、クローンURIを選択し、次へボタンをクリックします。![pic003.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/874b944c-d566-fa6b-4546-1c6e6bcf20a7.png)

ロケーション、URIの項目に、
『 https://github.com/primefaces/primefaces-showcase.git 』 と入力し、次へボタンをクリックします。

![pic004.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/0fa924a3-8f5d-9442-acff-7e57277a1780.png)

ブランチ選択では、8.0.x だけを選択し、次へボタンをクリックします。
(master ブランチは、10.0.0系のShowcaseのようですが、2021/03/03現在 うまくビルドがで出来ませんでした。)
![pic005.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/a1b3b400-1d96-d830-4aba-cdf12f50103c.png)

ローカル宛先 についてですが、デフォルトでは %USERPROFILE%\git\primefaces-showcase になっているはずです。
このままだと、Eclipseのワークスペースとは異なる場所になってしまいますので、
参照ボタンをクリックし、適当なワークスペースを選択し、
次へボタンをクリックします。

![pic006.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/58f5027b-27b1-b174-daf5-a8185d970f48.png)

複製したら、一般的なプロジェクトとしてインポートを選択し、次へボタンをクリックします。

![pic007.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/257fedfc-1024-875e-b09f-8d8997f62a07.png)

適宜、プロジェクト名を指定します。

![pic008.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/dd858dbf-58ac-a648-135c-eb65e8bb8f60.png)

以上でインポートが終了しました。

## ビルド

ターミナルを開きます。
パッケージエクスプローラー上にカーソルを持っていき、右クリック。
ローカルターミナルに表示を選択すると、ターミナルが開かれると思います。

![pic009.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/e66dc160-fd74-8e34-2be7-8ba92b2dc167.png)

開かれない場合には、コマンドプロンプトからプロジェクトのディレクトリに移動してください。

ターミナル上で、以下のコマンドを投入し、しばらく待ちます。

『 mvn clean package 』

ビルドに成功すると、BUILD SUCCESS とメッセージが出るはずです。
![pic010.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/08003844-5349-2b14-b058-985d4f8d614b.png)


出なかった場合、何か問題があるようです。エラーメッセージを見て対応してください。

## 実行

実行するには、以下のコマンドを投入します。

『 mvn jetty:run 』

しばらく待つとサーバーが起動できるはずです。

サーバー起動が出来たら、以下のURLにアクセスすると、
ローカルで稼働している Primefaces Shorcase にアクセスできると思います。

『 http://localhost:8080/showcase/ 』

![pic011.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/292074/44aa566f-1876-bfe0-2143-d6e9c15656e4.png)

ローカル環境で、showcaseというサンプルが動作しているということは、
ソースを変更して動作を確認することもできますし、動いているサンプルをまねることで
対象のプログラム作成もはかどります。

## Docker イメージを作成する

実行をしやすいようにDockerイメージを作成します。
ファイルはプロジェクトのルート、pom.xml があるところに配置します。

```Dockerfile:Dockerfile
FROM jetty:9.4.38-jre8-slim
ADD ./target/*.war /var/lib/jetty/webapps/ROOT.war
```

## イメージ作成
以下のコマンドを投入し、Dockerイメージを作成します。

``` Batchfile:
docker build -t xxxx/primeface-shorcase:8.0 .
```

## 実行
以下のコマンドを投入し、実行します。

``` Batchfile:
docker run-t docker run -p 8080:8080 -t xxxx/primeface-shorcase:8.0
```

## 確認
確認のため、ウェブブラウザで以下のURLにアクセスします。

http://localhost:8080/