Java
MongoDB
Shiro

Apache Shiro Quickstart その4

前回はMongoDBを使いましたが、サンプルプログラムをダウンロードできるようにしました。
http://qiita.com/namikitakeo/items/312954ea8df4c6f9a45a

このサンプルでは、1.3.2 release distributionをベースにMongoDB対応しました。
http://www.geocities.jp/sambafs/shiro-root-1.3.2-source-release.zip

ソースパッケージをUnzip.

$ unzip shiro-root-1.3.2-source-release.zip

webディレクトリに移動。

$ cd shiro-root-1.3.2/samples/web

WARをファイルを作成。

$ mvn package

MongoDBサービスを起動します。

$ sudo su -
# apt-get install mongodb-server
# mkdir -p /data/db
# /usr/bin/mongod --logpath /var/log/mongodb/mongod.log --rest

REST APIでユーザー情報を管理できます。

$ curl http://localhost:28017/shiro/users/
$ curl -d '{id:"root", pass:"secret", roles:["user","admin"]}' http://localhost:28017/shiro/users/
$ curl -d '{id:"guest", pass:"guest", roles:["guest"]}' http://localhost:28017/shiro/users/
$ curl http://localhost:28017/shiro/users/

WARをファイルをTomcat7にデプロイ。

$ sudo su -
# /etc/init.d/tomcat7 stop
# cd /var/lib/tomcat7/webapps/
# cp shiro-root-1.3.2/samples/web/target/samples-web-1.3.2.war shiro.war
# /etc/init.d/tomcat7 start

WEBブラウザで以下のURLを参照してください。
http://localhost:8080/shiro/

JSTLでエラーになる場合は、standard.jar, jstl.jarをWEB-INF/libフォルダにコピーしてください。
http://blog.clock-up.jp/entry/2015/01/28/tomcat-jstl

# /etc/init.d/tomcat7 stop
# cp -p jakarta-taglibs-standard-1.1.2/lib/* shiro/WEB-INF/lib/
# /etc/init.d/tomcat7 start