LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。
以下の記事でGlassfish4.1.*の環境ができたので、
簡単なアプリケーションを作成し、Glassfishへのデプロイ・Webページ公開までやってみようと思います。
www.opensourcetech.tokyo
https://www.opensourcetech.tokyo/entry/20201215/1608009535
アプリケーション作成で参考にしたのは、以下。
https://netbeans.org/kb/docs/web/quickstart-webapps_ja.html
アクセスすると名前を入力するフォームが出て、OKをクリックすると「Hello, xxxx!」と出る簡単なものです。
Netbeansは、バージョン8.2のJAVA EEを使いました。
https://netbeans.apache.org/download/archive/index.html
https://netbeans.org/downloads/old/8.2/
とりあえず、中途リアルに従ってコードを作成。
Glassfishへデプロイするwarファイルの作成は、プロジェクトを選択して「消去してビルド」or「ビルド」をクリックすると生成されます。
※出力場所は、プロジェクトファイルが保存されるパスのdistフォルダでした。
※再ビルドする場合、エクスプローラなどでフォルダを開いているとエラーになるので注意。
作成したwarファイルは、Glassfishの左にあるApplications > Deployからデプロイします。
クライアント端末からアップロードする方法とGlassfishのローカルからデプロイする2つの方法があります。
パラメータは特に変更していません。
デプロイされたアプリケーションが表示され、
「Launch」をクリックするとhttpとhttpsの公開されるURL情報が確認できます。
※URLの「glassfish(ホスト名)」の部分は、有効なIPアドレスやドメインなどに変更が必要です。
8080/tcpと8181/tcpを使うとのことなので、サーバ側のファイアウォールでアクセス可能にします。
root@glassfish glassfish4]# firewall-cmd --add-port=8080/tcp --zone=public --permanent success [root@glassfish glassfish4]# firewall-cmd --add-port=8181/tcp --zone=public --permanent success [root@glassfish glassfish4]# systemctl reload firewalld [root@glassfish glassfish4]# firewall-cmd --list-all public (active) target: default icmp-block-inversion: noe interfaces: enp0s3 sources: services: dhcpv6-client ssh ports: 4848/tcp 8080/tcp 8181/tcp protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
クライアント端末のブラウザから該当のhttp/httpsへアクセスすると、
トップフォームが表示され、
名前を入力して「OK」とすると、コンテンツが表示されます。
前回記事と今回でインフラ(CentOS7 & Glassfishインストール)・アプリケーション開発(Netbeans & Java)・デプロイ(Glassfish)とやってみましたが、
・OS(Linuxなど)の知識
・ネットワークの知識
・Web周りの知識
・アプリケーションの知識
・セキュリティの知識
などがあるとハマった時にトラブルシュート出来てよさそうです。