Teedaでログイン管理(3)

id:imaginatorさん、原因追及&トラックバックありがとうございました。

というわけで、loginMessage→loginMsgに変更してみました。知らずに規約に従ってしまうとは…。まぁありがちですので、気をつけないといけないですね。
また、formタグをログイン判定divの外に出してみてトライ。オールグリーンです( ̄ー+ ̄)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:te="http://www.seasar.org/teeda/extension" xml:lang="ja" lang="ja">
<head>
	<meta http-equiv="content-type" content="text/html; charset=utf-8" />
  	<title>login test</title>
</head>
<body>
	<p><span id="count">n</span>回目の表示</p>
	<form method="POST">
		<div id="isLoggedin">
			<p><span id="userId">ユーザ名</span>さんではない場合は、
			< !-- <a href="?doLogout">ログアウト</a> -- >
			<input id="doLogout" type="submit" value="ログアウト" />してください。</p>
		</div>
		<div id="isNotLoggedin">
			ユーザID <input id="userId" type="text"/><br/>
			パスワード <input id="password" type="password"/><br/>
			<input id="doLogin" type="submit" value="login"/>
			<p><span id="loginMsg">ログイン成否表示場所</span></p>
		</div>
	</form>
</body>
</html>

Pageクラスの方はほとんど変えてない(loginMessage→loginMsgにしたダケ)ので、省略します。

<a href="?doLogout">ログアウト</a>

これは、上手くいくかなーー?と思ってチャレンジで書いてたんですが、やっぱり上手くいかなかったです。_| ̄|○
アンカータグ(aタグ)でdo系メソッドを起動するには、やっぱりlogout.htmlを作ってそのprerenderにログアウト処理を書くしかない…かな?
現在のところ、(せっかくformタグの中にあるので)submitボタンを作って凌いでいますが、なんとなく違和感ありますよね。

なんとかアンカータグでログアウトできるようになった時に、外側にformがあるのも、なんか不自然な設計に感じます。isLoggedinの中で、さらに別のformを作ることになったら、formが入れ子になってしまいますし。
ダメではないんでしょうけど、違和感max。