2015-09-24 72 views
1

我們剛剛將以前的版本從spring 3.x更新到Spring 4.x.我已經改變了我AnonymousAuthenticationFilter豆從這個必須設置匿名身份驗證主體。 Spring 4.x

<bean id="anonymousAuthenticationFilter" class="org.springframework.security.web.authentication.AnonymousAuthenticationFilter"> 
<property name="key" value="foobar"/> 
<property name="userAttribute" value="anonymousUser,ROLE_ANONYMOUS"/> 

這個

<bean id ="anonymousAuthFilter" class="org.springframework.security.web.authentication.AnonymousAuthenticationFilter"> 
<constructor-arg value="key"/> 
<constructor-arg value="#{userAttribute.password}"/> 
<constructor-arg value="#{userAttribute.authorities}"/> 

但現在我們得到一個編譯錯誤讀取 構造拋出異常:nexted異常是java.l ang.IllegalArgumentException:必須設置匿名身份驗證主體。

任何幫助將是偉大的。謝謝

回答

0

這是因爲您所引入的新變量(密碼和角色)未設置。你有這個錯誤是因爲這種表達決心空

<constructor-arg value="#{userAttribute.password}"/> 
<constructor-arg value="#{userAttribute.authorities}"/> 

定義必要的變量,並根據您的原始userAttribute對象上已更換,它會工作。

相關問題