2016-07-18 7 views
0

速度テンプレートでセッション属性を取得しようとしましたが、春の起動時には のセッション属性を取得できません。速度テンプレートでセッション属性を取得する

$!request.getParameter('user') 
$request.getParameter('user') 
#set ($user = $request.get('user')) 
$user 
$session.geAttribute('user') 
$request.getSession().getAttribute('user') 

私は論文を使用しようとしていますが、私は正しい価値を得ることができませんでした。

どのようにしてVelocityでセッション属性を取得できますか?

+0

どのように速度を設定しましたか? – aksappy

+0

@aksappy Application.properties 'spring.velocity.content-TYPE = text/htmlの;のcharset = UTF-8 spring.velocity.expose-セッション属性=真 spring.velocity.expose-要求属性= true' – Saveyourself

答えて

0

ベロシティー・ツールからVelocityViewServletのを使用している場合は、すべての は以下:

$session_attr 
$session.getAttribute("session_attr") 
$request.getSession().getAttribute("session_attr") 
$request.session.getAttribute("session_attr") 

が動作するはずです。

あなたは以下のコード フラグメントとのセッション内にあるかどうか確認しようとすることができます:あなたは、カスタムすることができVelocityViewResolverとsetExposeSessionAttributesが真であるので、

<ul> 
    #foreach($name in $session.getAttributeNames())  
     <li> $name = $session.getAttribute($name) </li> 
    #end 
</ul> 
+0

フィルタでは、私はセッション値を得ることができます 'System.out.println(req.getSession()。getAttribute(" user "));' しかし、速度テンプレートでは、まだ私は取得できません値。 – Saveyourself

+0

あなたは明示的に 'user'オブジェクトをVelocity Contextに入れて、それが正しくピックアップされているかどうかをチェックできますか?私は与えられた構成に問題がないのです。 – aksappy

0

あなたがより良いモードでセッション属性を公開したい

関連する問題