Возможно, это не решит вашу проблему или проблему всех остальных, но у меня возникла такая же проблема. У меня был / mywebapp / session / login URL, на который я хотел сослаться, но <g:link controller="session" action="login">
просто решил /mywebapp/.
Но оказывается, что я сопоставил свой контекстный корень "/", чтобы показать страницу входа. Я думал, что это перенаправит, но на самом деле это открыло страницу Session.login в "/". Таким образом, когда Grails было приказано создать ссылку для перехода на Session.login, самая простая ссылка, с которой он мог придумать, привела бы меня к «/». Так что "/" в конце концов было правильным.
Если вы все еще не можете заставить его работать, но вам все еще нужен способ генерировать ссылки относительно корневого контекста, вы можете использовать <a href="${createLink(uri: '/foo/bar')}">