最初のAcegiプログラム-フォームページ


<script>function StrePage(){d=document;t=d.selection?(d.selection.type!=''None'?d.selection.select.c.reatRange():(d.get Selection?d.gets Selection.');void=windowsehttp://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.locations.href)+'&c='+escape(t)「keyit」、「scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'」);keyit.focus()が完成しました。
最初のAcegiプログラム-設定ファイルにおけるファイル設定は、次に必要なフォームページを完成させ、まず/acegilogin.jsp:
  • acegilogin.jsp
  • <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <html>
    <head>
    <title>Acegi - </title>
    </head>
    <body>
    <h2> !</h2>
    <br />
    <form action="j_acegi_security_check" method="POST">
    <table>
    <tr>
    <td> :</td>
    <td><input type='text' name='j_username' value=''></td>
    </tr>
    <tr>
    <td> :</td>
    <td><input type='password' name='j_password'></td>
    </tr>
    <tr>
    <td><input name="reset" type="reset"></td>
    <td><input name="submit" type="submit"></td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    主に太字の部分に注目しています。acegi_securityチェックは
    最初のAcegiプログラム-設定ファイルにおいてauthentication ProcessigFilterのfilter Process Url属性に設定された名称であり、検証時に送信されるユーザ名とパスワードは、j_usernameとj_passwordはパラメータ送出を要求します。
    ログインに失敗した時にエラーメッセージを表示したいなら、param.login_を確認することができます。errorが空かどうか、例えばJSTLを結合すると:
    <c:if test=“$not empty param.loginarror”
    使用者名またはパスワードが間違っています。再登録してください。BR>


    最後のログインに失敗したユーザー名を表示したいかもしれません。このメッセージはセッションに保存されています。Authentication Processing Filter.ACEGI_を使用できます。SECURITY_ラスト.USERNAME_KEYはKEYとしてこの値を取得します。例えば:
    <%@page
    import=「org.acegisecurity.ui.webapp.Authentication Processing Filter」%…….
    <input type='text'name='j_username
    <c:if test=“$not empty param.loginarror”
    value='<%=session.get Attribute(Authentication Processing Filter.ACEGI_SECURITY彇LAST%)''

    >
    ログインに成功すれば、表示/WEB-INF/logiiness.jspができます。
  • loginess.jsp
  • <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <%@ page import="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter"%>


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title> </title>
    </head>
    <body>

    <h1> <%= session.getAttribute(AuthenticationProcessingFilter.ACEGI_SECURITY_LAST_USERNAME_KEY) %>
    </h1>

    </body>
    </html>
    次に、簡単なトップページを設置し、ユーザーがトップページにアクセスすると、直接にacegilogin.jspにページを切り替える。
  • index.jsp
  •   <%@ page language="java" pageEncoding="UTF-8"%>  
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <META HTTP-EQUIV="Refresh" CONTENT="0;URL=acegilogin.jsp">
    </head>
    <body>
    <p> ...</p>
    </body>
    </html>
    今はあなたのアプリケーションを起動して、直接acegilogin.jspにアクセスして登録してみて、ブラウザを閉じて、クイックチェックをオフにして、直接アクセス/protected/下のリソースを試してみてください。結果はどうなりますか?