Ubuntu に Spring Tool Suite を入れて Java EE 7 検証環境をつくる

つい先日、Ubuntu + GlassFish v4 に Eclipse で開発環境を作成した。

純粋な、Java EE 7 が結構使えるのではないかと言うもくろみだった。

なので、作成したEclipseの環境で、まず JSFを使ってみようと、Facelet を使ってみようと、「FaceletsはぴったりとJSFにフィットします」 こんな記事や、「JSFを信じない人のために: JSFに関するFUDをクリアーする」こんな記事を読みながら、簡単な、本当に簡単な Facelet を作成してみたのだが、、、

やっぱりダメだ。あの自動で吐かれるHTMLはダメだ。生理的に受け付けない。

Java EE6は Spring の代替になると思いますが、ただしJSFは除く、という話」に書かれている、

もうひとつのJSFの欠点が、最近のJavaScriptのプログラミングの進化と衝突する点です。最近はクライアントサイドのJavaScriptもMVCで(昔より)まっとうなGUIプログラミングモデルに進化しつつあります。JSFはこの動向と衝突します。なぜならJSFはクライアントサイドのJavaScriptのイベントを抽象化層の下に隠蔽する発想だからです。

なぜいまだにJava EEがStrutsの亡霊のようなJSFを中心に据えているのか不思議でなりません。もっともJava EE関係者の内部には同じ疑問を抱いている人たちもいそうです。少なくともProject Avatarの連中はJSFに疑問を抱いているはずです。

に同意。JSFって、ASP.NETのサーバーサイドコンポーネントの後追いで出てきた記憶があるけど(まぁそもそも、JSPもASPに追随した記憶も)、JSFの完成度が上がる?のと前後して、Ajax が出てきてクライアントサイドの開発パラダイムが変わってしまった。サーバーサイドでコンポーネントを作成して、HTMLが汚くなるのはかなりキツイ。それ以前に、サーバーサイドで全部やる必要がないし、クライアントJavaScriptから介入できないようなHTMLではつぶしがきかなさ過ぎる。

とはいえ、今更 Strutsはないので、、、結局 Spring MVC しか適当なのがない。JAX-RSに、HTML吐かすこともできるみたいだけど、サービスとHTMLをごっちゃにするのもしっくりこないし。

ということで、純粋JavaEEから、Spring MVC + Java EE 7 の検証環境をつくっていくことに方向転換。

Spring の環境使うのに、STSが楽なので、環境構築する。

1.Spring Tool Suite のダウンロードとインストトール

http://spring.io/tools/sts/all から Linux 用の 64bit をダウンロード

Eclipse のプラグインとしても提供されています。

http://dist.springsource.com/release/TOOLS/update/e4.3/

sts_download

解凍して、~/opt に持って行く。

$ tar -xvf spring-tool-suite-3.4.0.RELEASE-e4.3.1-linux-gtk-x86_64.tar.gz
$ mv springsource/ ~/opt

STSをダブルクリックで起動

sts_execute

1.1.メニューが表示されない

という不具合があるので、対応する

sts.sh

#! /bin/bash
export UBUNTU_MENUPROXY=0
$(dirname $0)/STS

実行権限

$ chmod +x sts.sh

sts_no_menu_too

2. GlassFishプラグインの導入

は、Eclipseと同じ

sts_glassfish_plugin

3.Spring Project (Spring MVC)の作成

3.1 プロジェクトの作成

プロジェクトエクスプローラーのコンテキストメニューから、Spring Project の作成をえらんで、Spring MVC Project を作成する。

sts_spring_mvc01

3.2 うごかしてみる

Hello World アプリ(時間を取得して表示する)が構成されているので、Servers ビューのGlassFishを右クリックし、Add and Remove から、Webアプリケーションを追加して、GlassFishを起動する。

sts_add_app_to_server 

sts_sprint_mvc_run

動きました!

4. EARの構成

Webアプリケーションは、Spring MVCでいいけど、JPAとかEJBのプロジェクトを作成して、EARにまとめたいので、新規プロジェクトの作成から、Java EE -Enterprise Application Project を作成する。

sts_java_ear01 

名前をつけて、

sts_ear02

先ほどの、Spring MVC アプリケーションが表示されるので、EARに含める。

sts_ear03

5.デプロイのテスト

EARプロジェクトが作成できたら、プロジェクトを選択して、コンテキストメニューから、Export – EAR fileを選択し、EARファイルを作成。

sts_make_ear

http://localhost:4848 で GlassFishp の管理コンソールをたちあげ、左側のペインでアプリケーションを選択し、デプロイボタンを押下。

sts_ear_deploy

作成したEARファイルを指定。

sts_ear_deploy02

デプロイされた。

sts_ear_deploy04

下へスクロールしていくと、WAR があるので、右端のアクション-起動を押してみる。

sts_ear_exec

http と https それぞれのアプリケーションへのリンクが記載された画面が表示されるので、クリック。

sts_ear_run

起動した!

6.Spring Tool Suite からの起動テスト

Servers ビュー、GlassFish の コンテキストメニュー Add and Remove を開いて、EARを登録

sts_ear_on_sts_server

GlassFishを起動して、アプリケーションにアクセス。

sts_ear_run_on_sts 

起動した!!

今日はこんなところ。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です