はじめに
Javaで動作するwikiを動かしてみようとして検索したところ、
2013年に最終更新したjamwikiというものを見つけました。
とりあえず自前Mac,tomcatにdeployし、動かせるようにしてみました。
ソースはオープンソースです。
JamWikiのdeploy
Step1
1.公式よりソース(1.3.2)をダウンロード
2.IntelliJからプロジェクトをインポート(mavenプロジェクト)
3.IntelliJの依存関係でエラー
*info.bliki.wiki:bliki-core.3.0.16がmaven-centralにない
Step2
1.プロジェクト直下のpom.xmlを変更する。
<dependency>
<groupId>info.bliki.wiki</groupId>
<artifactId>bliki-core</artifactId>
<version>3.0.19</version>
</dependency>
2.mavenでとりあえずwarを作成する。
JAMWiki Super POMからライフサイクル/package
3.テストに全て合格し、warができていることを確認
Step3
自前用に、mysqlのjdbcドライバーを追加。
ついでに各種ライブラリを更新化し、拡張用にlombokを追加する。
de.congrace.exp4jは更新しない。
1.プロジェクト直下のpom.xmlを変更する。
2.SQLを変更する
create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, \
3.mavenでwarを作成する。
Step4
1.Mysqlを立ち上げ、databaseを作成する。
create database wiki;
2.tomcatを起動し、JamWiki.warをデプロイする。
3.JamWikiの設定を行い、初期化作業を終了する。
JamWikiの仕様
Table構成
25テーブルある模様。
show tables from wiki;
sql.mysql.propertiesには12テーブル分のcreate文しかない。。。
Java構成
Spring3.x系を使用している。
トップページへの遷移
http://localhost:8080/jamwiki-1.3.2/
↓
http://localhost:8080/jamwiki-1.3.2/en/StartingPoints
/jamwiki-war/src/main/webapp/index.jspにアクセスし、
index.jsp内の下記記述にてリダイレクトされている
<c:redirect url="${defaultVirtualWiki}/${defaultTopic}" />
(default)トップページの要素は下記で定義されてるかも???
/jamwiki-core/src/main/resources/pages/ja/
記事の投稿
管理者権限で記事を(xml)アップロードのみ???
(新規投稿、新規作成が見当たらない^^;)
投稿すると「jam_topic」「jam_topic_links」「jam_topic_version」にレコードが足される
ページ構成
/jamwiki-war/src/main/webapp/WEB-INF/jsp/wiki.jsp内の下記記述で出力する内容を出し分けている。
<jsp:include page="${pageInfo.contentJsp}" flush="true" />
mapping等の制御は/jamwiki-clone/jamwiki-war/src/main/webapp/WEB-INF/jamwiki-servlet.xmlで制御している。