infoScoop opensource 2.2.0RC1をインストールしてみる

本家のサイトに書いていますが備忘録的に残しておきます。

環境

前提

  • 環境が一通りインストールできていること
  • 本家サイトよりダウンロードしていること

DB作成

今回はiscoopっていう名前で作成します。

$ mysql -u root -p
mysql> create databse iscoop default character set utf8;
Query ok....

スキーマ定義

解凍してスキーマを定義します。

$ unzip infoscoop-opensource-2.2.0
$ cd #{infoscoop_dir}
$ mysql -u root -p < tools/initdb/schema/mysql/mysqlinit.sql
ERROR 1071 (42000) at line 415: Specified key was too long; max key length is 1000 bytes
$

これはUTF-8でよく見られるエラーですね。
みるとIS_OAUTH_TOKENテーブルのキーでどうこう言われてるので、varchar(1024)とか(255)とかを100に変更して再度コマンド発行するとうまくいきます。(途中までテーブル作っているので一度drop databaseしないといけません)

データベースの設定

tools/initdb/bin/datasource.xmlに定義している場所があります。デフォルトは以下のようになっています。

  • MySQL
  • DB: iscoop
  • User: root
  • Password: なし

必要であれば適宜変更します。

初期データの投入

定義したテーブルに初期データを投入します。
アカウント情報は${infoscoop_dir}/tools/initdb/data/acoount/data.csvくらいにあります。そこにアカウントを追加した後、以下を実行します。

$ cd ${infoscoop_dir}/tools/initdb
$ chmod 755 ./import.sh
$ ./import.sh -lang ja

GlassFishの設定

以下の設定を行いました。あとMySQLを利用する場合はGlassFishのクラスパスにmysql-connectorをおいておく必要があります。

  • JDBCリソースの作成
    • 名前: jdbc/infoscoop
  • 接続プールの作成
    • 名前: infoscoop
    • データソースクラス名: com.mysql.jdbc.jdbc2.optional.MysqlDataSource
    • リソースタイプ: javax.sql.DataSource
    • 追加プロパティ[DatabaseName]: MySQL
    • 追加プロパティ[user]: root
    • 追加プロパティ[password]: xxxxxxxx
    • 追加プロパティ[url]: jdbc:mysql://localhost:3306/iscoop
    • 追加プロパティ[ServerName]: localhost
    • 追加プロパティ[port]: 3306

※接続プールの設定がうまくいったかどうかはpingを試せば大丈夫なはずです。

Warをデプロイ

infoScoopに内包されているwarをデプロイしなおします。
なんか設定変更している場合はremakewar.shで作り直す必要があるかもしません。
http://your_ap_host:8080/infoscoopにアクセスしてログイン画面が表示されればOKです。