scarabのインストール

scarab.tigris.orgから1.0.b20をダウンロード。
展開したファイルに「INSTALL」というテキストファイルがあるので、読めば大体わかる。
あらかじめ、ネット検索して日本語なサイトも見つけてあったので、これも参考に。

なんだ、バイナリリリースぢゃないのか...

まぁ、WEBアプリなので当たり前っちゃぁ当たり前。

maven1.xとANTの2種類の手段があるらしいが、mavenは思いっきり2.xを使用中で別途インストールするのも面倒なので、ここではANTで。
およそ以下の手順

  1. minimal.propertiesファイルをbuild.propertiesとしてコピー
  2. 設定を修正
  3. ビルドとDBの創成
  4. デプロイ

設定を設定

コピーしたbuild.propertiesを見ると大体の見当が付いた。あとは、フルセットだと言われているproject.propertiesと見比べて足りないのを足していった。
設定値が「**GENERATED**」となっている箇所があるが、これはこのままでデフォルト値を入れてくれるらしい。

メールサーバ

メールを配信するためのSMTPサーバを指定

  • system.mail.host=
  1. 会社のネットワークに居るので、誤射メールの場合に管理者から怒られそう。以下の項目でScarabから発信するメールのFrom:欄を指定することができるらしい。
    • scarab.email.domain=
    • scarab.email.default.fromName=
MySQLへのアクセス設定

この時点で専用アカウントやDBインスタンスは無くてもいいらしい

  • scarab.database.username=(scarabにした)
  • scarab.database.password=
  • scarab.database.admin.username=(DB CREATE権限のあるアカウント)
  • scarab.database.admin.password=
MySQLの日本語入力の指定

フォームなどの入力日本語が再表示時に文字化けてしまったので、以下を追加。

  • scarab.database.url.extension.mysql = useUnicode=true&characterEncoding=utf8

(scarab.database.url.extension=**GENERATED**の下に)

メールのエンコード指定

使ってみて気づいたのが、MySQL設定と関係あるのか、メールのエンコードがUTF8になっている。これでは8bitなのでSMTPの経路によっては文字化けに。
http://scarab-ja.sourceforge.jp/cgi-bin/hiki.cgi?%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB#l6に従って以下を追加。

自身のURLの指定

これも後から気づいて修正したものだが、メール配信される承認や許可の本文に記載されるURLが"localhost"になってしまっている。以下の項目をしていることで解消。

  • scarab.http.domain=

ビルドとDB創成

cd 展開したフォルダ/build
ant

でできる。
これで配布物に含まれるTomcatへのデプロイまでやってしまうが、build.xmlを見る限りデプロイのdependsが複数のtargetで構成されているので、これが簡単。
DB創成は、この後で以下のコマンド。

ant -Dskip.seed.data=true create-db

イロイロ試していたために、設定とビルドを何度も繰り返したが、この場合は毎回生成物を削除してからやり直さなければならないっぽい。

ant clean-all
Java5環境の場合

構築環境がJava5だったので、そのままビルドすると警告が。気持ち悪いのでbuild/build.xmlを修正

        <javac srcdir="${src.java.dir.scarab}"
               destdir="${build.dest.scarab}"
               debug="on"
               source="1.4" ←追加
               deprecation="off"
               optimize="off">

デプロイ

すでにTomcat5.5が稼働中なので、添付Tomcatを使わずに、こちらにデプロイ。

ant war

とやると、target/にscarab.warが出来るので、これを手作業でコピーする。

日本語化の修正

http://scarab-ja.sourceforge.jp/cgi-bin/hiki.cgi?%A5%ED%A1%BC%A5%AB%A5%E9%A5%A4%A5%BAによると、

※ 注意: scarab 1.0 b20 に含まれるリソースバンドルファイルは古いため、そのまま使用するといくつかのページで例外が発生してしまいます(例: 共通属性の設定画面)。これを回避するには最新のリソースバンドルを入手して使用してください。

だそうなので、素直に従う。

指示されたURLからファイルをダウンロードし、デプロイした先のwebapps\scarab\WEB-INF\classes\に上書きした。あるいは、ビルド前にD:\TestWork\scarab-1.0-b20\src\conf\classes\に上書きしても行けそう。