管理者パスワードを作る

メッセージの「削除」時に、管理者が削除できないと意味がありません。
そこで「管理者パスワード」を設けます。
ここではTapestryのGlobalオブジェクトを使用してみたいと思います。

GlobalオブジェクトはVisitオブジェクトと似ていますが、その名の通りアプリケーション全体で共有されるオブジェクトになります。
したがって、Globalオブジェクトはスレッドセーフである必要があります。
実際にはServletContextに値が保持されるようです。
管理者パスワードを保持するために、以下のように実装してみました。

Global.java

package bbs.view;

/**
 * Globalオブジェクト
 * 
 * @author toolkit
 * @version $Revision$
 */
public class Global {

	private String adminPass;

	public Global() {
		adminPass = "admn";
	}

	public String getAdminPass() {
		return this.adminPass;
	}

	public void setAdminPass(String adminPass) {
		this.adminPass = adminPass;
	}
}

ひどい実装ですね〜(笑)。

そして、.applicationファイルにもGlobalオブジェクトの定義を追加しておきます。

MessageBoard.application(抜粋)

<property name="org.apache.tapestry.global-class">bbs.view.Global</property>