<div>$B>.NS$5$s!"(BInterceptor$B$KBP$9$k(BDTO$B$N(BDI$B$K$D$$$F$O$*@$OC$K$J$j$^$7$?!#(B<br>Interceptor$B$NLdBj$N;~!"K\7o$bF1;~$KH/@8$7$F$$$^$7$?!#(B</div>
<div>Interceptor$B$N7o$,2r7h$7$^$7$?$N$G!"(B@RemoveSession$B$,(B<br>$B5!G=$7$J$$7o$K$D$$$F$"$i$?$a$FEj9F$5$;$FD:$-$^$9!#(B</div>
<p><br>$B!Z=hM}35MW(B($B%F%9%H<j=g(B)$B![(B<br>$B!!(B1.login2.html$B$rI=<($7!"%m%0%$%s$7$^$9!#(B<br>$B!!(B2.$B%a%K%e!<2hLL$KLa$j$^$9(B<br>&nbsp; 3.$B%m%0%*%U%\%?%s$,I=<($5$l$k$N$G!"%/%j%C%/$7$^$9!#(B<br>&nbsp;&nbsp;&nbsp; <br>$B!ZLdBj![(B<br>$B!!!&%m%0%*%U%\%?%s$r%/%j%C%/$9$k$H(B doLogout()$B$,8F$S=P$5$l$^$9$,!"(B<br>$B!!!!(BloginUserDto$B$O:o=|$5$l$^$;$s!#(B<br>&nbsp;&nbsp;&nbsp; $B$D$^$j!"(B@RemoveSession(name=&quot;loginUserDto&quot;)$B$,5!G=$7$F$$$^$;$s!#(B
<br>&nbsp; $B!&K\7o$b(BS2Container-2.4.10,Teeda-1.0.4$B$G$O@5>o$KF0:n$7$^$9$,!"(B<br>&nbsp;&nbsp;&nbsp; S2Container-2.4.13,Teeda-1.0.7$B$G$O(B@RemoveSession$B$,5!G=$7$^$;$s!#(B</p>
<p>$B!Z(Blogin2.html$B![(B<br>...$B>JN,(B...<br>&lt;form class=&quot;loginForm&quot; method=&quot;POST&quot;&gt;<br>&lt;div id=&quot;isLoggedin&quot;&gt;<br>&lt;p&gt;$B%m%0%$%s:Q$_$G$9(B&lt;/p&gt;<br>&lt;input id=&quot;doLogout&quot; type=&quot;submit&quot; value=&quot;$B%m%0%*%U(B&quot;/&gt;
<br>&lt;/div&gt;<br>&lt;div id=&quot;isNotLoggedin&quot;&gt;<br>&lt;table border=&quot;2&quot;&gt;<br>&lt;tr&gt;&lt;td class=&quot;table_td&quot;&gt;$B%f!<%6(BID&lt;/td&gt;&lt;td&gt;&lt;input id=&quot;userId&quot; type=&quot;text&quot;/&gt;&lt;/td&gt;&lt;/tr&gt;
<br>&lt;tr&gt;&lt;td class=&quot;table_td&quot;&gt;$B%Q%9%o!<%I(B&lt;/td&gt;&lt;td&gt;&lt;input id=&quot;password&quot; type=&quot;password&quot;/&gt;&lt;/td&gt;&lt;/tr&gt;<br>&lt;tr&gt;&lt;td colspan=&quot;2&quot; align=&quot;center&quot;&gt;
<br>&lt;input id=&quot;doLogin&quot; type=&quot;submit&quot; value=&quot;$B%m%0%$%s(B&quot; style=&quot;{cursor:hand}&quot;/&gt;<br>&lt;/td&gt;&lt;/tr&gt;<br>...$B>JN,(B...</p>
<p>$B!Z(BLogin2Page$B![(B</p>
<p>package test.web.login2;</p>
<p>...$B>JN,(B(import)...</p>
<p>public class Login2Page {</p>
<p>... $B>JN,(B($B%W%m%Q%F%#!"%2%C%?!<!"%;%C%?!<(B)....</p>
<p>&nbsp; private LoginUserDto loginUserDto;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //Dto$B$r(BDI$B$9$k(B<br>&nbsp; public void&nbsp;&nbsp;&nbsp; setLoginUserDto(LoginUserDto loginUserDto) {<br>&nbsp;&nbsp;&nbsp; this.loginUserDto = loginUserDto;<br>&nbsp; }</p>
<p>&nbsp; public String doLogin() {<br>...$B>JN,(B($B%m%0%$%s%A%'%C%/!"%m%0%$%s>pJs$N(BloginUserDto$B$X$N3JG<(B)...<br>&nbsp; }</p>
<p>&nbsp; @RemoveSession(name=&quot;loginUserDto&quot;)<br>&nbsp; public String doLogout() {<br>&nbsp;&nbsp;&nbsp; System.out.println(&quot;#### start doLogout() ####&quot;);<br>&nbsp;&nbsp;&nbsp; return null;<br>&nbsp; }<br>}</p>
<p>$B!Z(BLoginUserDto.java$B![(B<br>package test.web.dto;<br>import org.seasar.framework.container.annotation.tiger.*;</p>
<p>@Component(instance = InstanceType.SESSION)<br>public class LoginUserDto {</p>
<p>&nbsp; private String userId;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp; private boolean authed;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>...$B>JN,(B($B%2%C%?!<!"%;%C%?!<(B)...<br>}</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>