Play Framework 2.3 For Java ことはじめ #7 bootstrap3を使う

f:id:masato47744:20140720125846p:plainPlay Framework 2.3 For Java 入門記事一覧

データベースとの接続ができたら、今度は画面側の処理はどんな感じで書いていくのかを調べていきます。
第2回テンプレートエンジン編でhtmlはほぼそのまま書けることは分かったけど、cssとかjsとかってどんな風に読み込むのが普通なのかを知りたいので、第7回のテーマとします。

1. WebJars

bootstrap3とplayとかでググるWebJarsというのを使ってやるというのが出てくる。Playのドキュメントを検索してみると、公式ドキュメントのPlay2.2からPlay2.3へのマイグレーション方法の説明ページで、

WebJars now play an important role in the provision of assets to a Play application.

と書いてあった。

WebJars - Web Libraries in Jarsは、クライアントサイドのライブラリ(BootstrapとかjQueryとか)をjarにしたものらしい。色んなビルドシステム(mavenとか)でも使えてもちろんsbtでも使える。
WebJars - Web Libraries in Jarsにいけば、欲しいライブラリが検索できる。

2. Playへの取り込み方

WebJars - Documentationにどうやって取り込めばいいかすごく分かりやすく書いてある。

例えば、Bootstrapならbuild.sbtにこれを追加して、

libraryDependencies ++= Seq(
  "org.webjars" %% "webjars-play" % "2.3.0",
  "org.webjars" % "bootstrap" % "3.2.0"
)

routes

GET     /webjars/*file                    controllers.WebJarAssets.at(file)

使う時はこんな感じ。

<link rel='stylesheet' href='@routes.WebJarAssets.at(WebJarAssets.locate("css/bootstrap.min.css"))'>

すごく簡単でした!

まとめ

データベースで苦労しまくったせいか、構えてしまったけどまぁ普通に考えたらこの辺りは簡単にできて当たり前だよね。

次はFormまわりを調べようと思う。ここまで分かればだいたいWebアプリケーションっぽくなるかな。 第8回はこちら