IdentityManager Problema de costura
-
27-09-2019 - |
Pergunta
Tenho um problema com o identityManager e a costura. Eu explico meu problema:
No meu aplicativo, tenho uma página para adicionar permissão a uma função. O método para salvá -lo está aqui:
JpaPermissionStore jpaPermissionStore = (JpaPermissionStore) Component.getInstance("org.jboss.seam.security.jpaPermissionStore", true);
List<Permission> permissions = new ArrayList<Permission>();
for (String s : this.selectedActions)
permissions.add(new Permission(this.selectedTarget, s, new org.jboss.seam.security.Role(role)));
if (permissions.size() > 0)
jpaPermissionStore.grantPermissions(permissions);
Conversation.instance().end();
Tudo funciona bem com este método. As permissões são adicionadas no banco de dados.
Mas depois de economizar permissão, o aplicativo redireciona o usuário em uma página que lista a função com permissões.
Nesta página, a nova permissão não aparece. Depois de pesquisar o problema, parece que o identityManager não carrega a permissão do banco de dados.
Então, minha pergunta é:
Como atualizar o IdentityManager para forçá -lo a atualizar os dados?
Obrigado.
Solução
Você precisa atualizar os papéis da identidade manualmente. Você deve conferir esta postagem