0

現在これを持っています:

<sec:ifLoggedIn>
     <sec:username/><br/>
     <sec:roles/><br/>
      <g:link controller="logout" action="index">Logout</g:link>
</sec:ifLoggedIn>
<sec:ifNotLoggedIn>
    <h1>Who are you?</h1><br/>
    <g:link controller="login" action="auth">LOGIN</g:link>
</sec:ifNotLoggedIn>

エラーが発生します:

Tag [roles] does not exist.   No tag library found for namespace: sec

ただし、削除する<sec:roles/><br/>と正常に動作します。どうしてこれなの?これは本番環境でのみ発生する問題であり、intellij ではすべてが優れています。

4

2 に答える 2

3

rolesSpring セキュリティ コア プラグインにタグが存在しません。ビューにユーザーの役割を表示したい場合は、独自のタグを作成できます。

class TestTagLib {

    static final namespace = 'myTag'
    def springSecurityService

    def userAuthorities = { attrs ->
        out << springSecurityService.principal.authorities 
        //or out << springSecurityService.authentication.authorities
    }
}

あなたのビューでそれを使用します

<myTag:userAuthorities/>
于 2014-03-12T18:43:38.937 に答える