2011-03-30 121 views
1

系统在Windows上运行,但不能运行在Linux上。我可以登录确定,列表数据,但一旦我转到以下任一页面,我得到下面的错误的:Spring3,Security3:系统可以在Windows上运行,但不能在Linux上运行java.lang.IllegalArgumentException

<http auto-config="true" use-expressions='true'> 
     <intercept-url pattern="/friends/**" access="ROLE_USER" /> 
     <intercept-url pattern="/articles/**" access="ROLE_USER" /> 
</http> 

java.lang.IllegalArgumentException异常

HTTP Status 500 - 

type Exception report 

message 

description The server encountered an internal error() that prevented it from fulfilling this request. 

exception 

java.lang.IllegalArgumentException: Failed to evaluate expression 'ROLE_USER' 
    org.springframework.security.access.expression.ExpressionUtils.evaluateAsBoolean(ExpressionUtils.java:13) 
    org.springframework.security.web.access.expression.WebExpressionVoter.vote(WebExpressionVoter.java:34) 
    org.springframework.security.access.vote.AffirmativeBased.decide(AffirmativeBased.java:50) 
    org.springframework.security.access.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:203) 
    org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:106) 
    org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) 
    org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380) 

回答

3

在Spring 3.0,它是存取= “ROLE_USER”

在Spring 4.0或更高,它是存取= “hasRole( 'ROLE_USER')”

相关问题