ニコニコカレンダー

ニコニコカレンダーをつけるためのJavaベースのWebアプリケーションです。ニコニコカレンダーがいかなるものかについては以下のページを参照してください。

このプロジェクトではTomcatなどのアプリケーションサーバにデプロイして利用可能なスタンドアロン版と、Google App Engineで動作する一般向けのサービスを開発しています。

スタンドアロン版

こちらのページからダウンロードしたnikocale.warをアプリケーションサーバにデプロイするだけで利用可能です。

nikocale_standalone.png

システム管理画面にはweb.xmlで認証をかけています。Tomcatの場合はconf/tomcat-users.xmlに適切なロールのユーザを追加してください。tomcat-users.xmlの設定例を以下に示します。

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="admin"/>
  <user username="admin" password="admin" roles="admin"/>
</tomcat-users>

ニコカレのデータはTomcatを起動したユーザのHOME/.nikocaleディレクトリ配下にHSQLDBのデータファイルとして作成されます。データの移行やバックアップする場合はこのディレクトリをコピーすればOKです。また、システム管理画面からJSON形式でもエクスポート/インポートできるようになっているので、これをデータ移行やバックアップ用途として使ってもいいでしょう。

Google App Engine版

Google App Engine for Javaで一般向けのニコニコカレンダーサービスを提供しています。Google App Engine版のニコニコカレンダーサービスを利用するには以下のURLにアクセスしてください。

ニコニコフレームワーク

ニコニコフレームワークとは、ニコニコカレンダーの開発に使用しているフレームワークを単独で利用できるよう切り出して整備したものです。

もともとはGoogle App Engineでの利用を想定した軽量なWebアプリケーションフレームワークとして作成したものですが、JDBCのサポートも含まれているため通常のWebアプリケーションでも使用することができます。ニコニコフレームワークを使用することで通常のWebアプリケーションと、Google App Engineで動作するWebアプリケーションを少ないコストで並行開発できるようにすることを目標としています。

ニコニコフレームワークには以下のような機能・特徴があります。

  • フットプリントが小さい、軽量(Google App Engineで使いやすい、Commons的なユーティリティも自前提供)
  • 設定ファイルは非常に少ないです(必須なのはJDBC接続情報(GAEの場合は不要)とルートパッケージの指定程度)
  • Struts風のMVCフレームワーク(URLからアクションクラスに自動マッピング、リクエストパラメータはアクションのフィールドで受け取る)
  • いまのところビュー技術はJSPのみサポート、便利なEL関数などを提供
  • アノテーションによる簡易入力チェック機能
  • Google App EngineのJDOを扱いやすくする機能
  • JDBCを使用したデータベースアクセスライブラリ、アノテーションを使用した簡易O/Rマッピング機能

ニコニコフレームワークはベータリリースです。将来的に仕様が大きく変更される可能性がありますのでご注意ください。