2017-01-04 4 views
0

Spring Web FlowのためにSpring Securityを使用する場合、ログインページでフロースコープの変数にアクセスするにはどうすればよいですか?状況:
Webフローのビューステートは<secured/>タグで保護されています。権限のないユーザがこの状態になると、フィルタチェーンはログインページを呼び出します。しかし、このログインページは流れの外にあります。このログインページのSpring MVCコントローラでは、this answerのようなフロー変数にアクセスしようとしました。しかしrequestContextの場合はnullになります。WebフローのためのSpringセキュリティ:ログインページのフロースコープ変数にアクセスする方法

答えて

0

セキュリティで保護されていないページでフロースコープ変数を使用する場合は問題ありません。私は大丈夫に動作し、次のを持っている:

<flow xmlns="http://www.springframework.org/schema/webflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.springframework.org/schema/webflow 
     http://www.springframework.org/schema/webflow/spring-webflow-2.0.xsd"> 

    <view-state id="start" model="userForm" view="user/login"> 
     <on-entry> 
      <set name="flowScope.titleCode" value="'login'" /> 
      <set name="flowScope.login_error" value="requestParameters.login_error" /> 
      <set name="flowScope.showRecaptcha" value="recaptchaService.showRecaptcha()" /> 
     </on-entry> 
    </view-state> 

その後、私のlogin.jspは、次のようになります。

<h2> 
    <spring:message code="title_${titleCode}" /> 
</h2> 

JSPに関連するタグヘッダーは次のとおりです。

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> 
+0

私はこれを試してみました変数はログインページからアクセスできません。おそらく私自身のカスタムログインページを使用しているのかもしれません。つまり、設定した 'HttpSecurity.loginPage'がSpring MVC LoginControllerクラスを呼び出し、ログインページを表示しています。あなたのセットアップは何ですか? – olivmir

関連する問題