0

JSF2 と richfaces でスプリング セキュリティを使用したいと考えています。

春に生成されたログインページを使用すると、正常に動作します。

    <security:http auto-config="true" use-expressions="true">
    <security:intercept-url pattern="/Admin*" access="isAuthenticated()" />   
    <security:form-login  login-page="/spring_security_login"  login-processing-url="/j_spring_security_check"  authentication-failure-url="/spring_security_login?login_error"  />
    <security:logout logout-url="/j_spring_security_logout" logout-success-url="/" delete-cookies="JSESSIONID"  invalidate-session="true"/>
    </security:http>

ここで、カスタム ログインを紹介します。

    <security:form-login  login-page="/login.xhtml" ....>

login.xhtml:

        <h:form id ="select_form" prependId="false">

        <h:panelGrid columns="2" style="">

            <h:outputText value ="Identifiant :"> </h:outputText>

            <h:inputText name="j_username"  >
                    <rich:placeholder value="Entrez un identifiant..." />
            </h:inputText>

            <h:outputText value ="Mot de passe :"> </h:outputText>

            <h:inputText name="j_password"  >
                    <rich:placeholder value="Entrez un mot de passe..." />
            </h:inputText>

            <h:outputText value =""> </h:outputText>

            <h:commandButton id="btnLoginId" action="j_spring_security_check" value="Login" type="submit" style="float:right;" />

        </h:panelGrid>

    </h:form>

問題は、security-conf.xml に記述されているように j_spring_security_check を使用したいことです。

しかし、JSF は存在しない URL にリダイレクトしたいと考えています。実際、faces-configs.xml でナビゲーション ケースを j_spring_security_check に設定しようとしても、j_spring_security_check はレンダリングされたページを提供しないため、とにかく機能しません。

したがって、バッキング Bean を使用せずに JSF2 でアクション ログインを構成し、security-conf の強度を呼び出すだけで、必要以上の行をプログラミングせずにすべての作業を行う方法についての私の質問です。または、j_spring_security_check を使用しているときに、faces-config ナビゲーションを設定する方法は? 出来ますか ?

どうもありがとうございました。

更新: JSF を使用せずにハードコードされた html で正常に動作しています。

  <form name='f' action='/Lyric/j_spring_security_check' method='post'>
   <table>
      <tr><td>User:</td><td><input type='text' name='j_username' value=""/></td></tr>
      <tr><td>Password:</td><td><input type='password' name='j_password'/></td></tr>
      <tr><td colspan='2'><input name="submit" type="submit" value="Login"/></td></tr>
   </table>
  </form>
4

1 に答える 1