2016-04-13 7 views
0

私のコントローラで、私は春のアノテーションでsystem propertiesを取得しようとしています。これは、コードSpring Expression Language - アノテーションでシステムプロパティを取得

org.springframework.expression.spel.SpelParseExceptionを投げている

@PreAuthorize("hasPermission('${systemProperties['user.name']}', '')")

あります。 は私が

春の注釈内のシステムプロパティを取得するための構文は何ですか同じexception

@PreAuthorize("hasPermission('#{systemProperties['user.name']}', '')") 

が、結果を試してみましたか?

+0

あなたは#{systemProperties'代わりに '$ {systemProperties'の'使うべきではないでしょうか。 –

+0

試しましたが、同じ例外が発生しました –

+0

@Suganthanは与えられた例を試してみてください。ローカルでは機能していましたが、それ以外の場合は、それが間違っていると答えを削除します。 – dambros

答えて

0

は、以下のことを試してみてください。

@Component 
public class WhateverBean { 

    @Value("#{systemProperties['user.name']}") 
    private String userName; 

    public String getUserName() { 
     return userName; 
    } 

    @PreAuthorize("hasPermission('@whateverBean.getUserName()', '')") 
    public void xxx() { 
     // ... 
    } 
} 
関連する問題