Другой способ - разместить ваше приложение GWT на странице JSP. Ваш JSP может содержать фрагмент кода, подобный этому
<script type="text/javascript">
var role = unescape("${role}");
</script>
Где $ {role} - это язык выражений, расширенный от значения, которое вы вычислили из связанного сервлета / контроллера и представленного в JSP.
Когда ваше приложение GWT запускается в браузере, значение будет заполнено. Ваше приложение GWT может легко вызвать JS, чтобы получить это значение из вызова нативного метода, например
public native String getRole() { /*-{ return $wnd.role; }-*/;
Таким образом, ваш модуль может вызывать getRole (), проверять значение и делать то, что ему нравится, чтобы скрывать / показывать элементы.
Очевидно, что ваш бэкэнд также должен обеспечивать выполнение этой роли (например, сохраняя ее в сеансе и, при необходимости, проверяя ее), поскольку кто-то может запустить страницу через отладчик JS, установив точку останова или подобное, которая изменяет значение до его оценки, позволяя им чтобы получить доступ к вещам, к которым они не должны иметь доступ.