2016-04-13 17 views
0

In meinem Controller versuche ich system properties in Spring Annotation zu bekommen. Dies ist der CodeSpring Expression Language - Systemeigenschaft in Anmerkung erhalten

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

die org.springframework.expression.spel.SpelParseException wirft. versuchte ich

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

aber die Ergebnisse in derselben exception

Was ist die Syntax für innen Feder Annotation Systemeigenschaften zu bekommen?

+0

Sollten Sie nicht '# {systemProperties' statt' $ {systemProperties' verwenden? –

+0

Versucht, aber die gleiche Ausnahme bekommen –

+0

@Suganthan versuchen Sie das Beispiel gegeben und lemme wissen. Lokal hat es funktioniert, sonst werde ich nur die Antwort entfernen, wenn das nicht stimmt. – dambros

Antwort

0

Versuchen Sie Folgendes:

@Component 
public class WhateverBean { 

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

    public String getUserName() { 
     return userName; 
    } 

    @PreAuthorize("hasPermission('@whateverBean.getUserName()', '')") 
    public void xxx() { 
     // ... 
    } 
} 
Verwandte Themen