WM: a NavigationManager-be Conversation ellenőrző és kezelő logika
került*.
Ezután maga a role-ok assign-olása és unassign-olása hála az
IllegalStateException: no tx in thread -nek ad-hoc jelleggel következik,
vagy nem, be. Ekkor az alkalmazás nem száll el, csak azt írja ki üziben,
h nem sikerült a role-t hozzáadni. A logok értesítenek.


*: Ugyanis minden request-hez tartozik ponotsan egy Conversation,
amelynek az állapota lehet Transient vagy Long-Running. Minden
@ConversationScoped-al annotált bean önmagában @RequestScoped-ként
viselkedik, amig a conversation.begin() -el long-running-á nem tesszük
az adott "beszélgetést". A navigationManager itt ragadja meg az alkalmat
arra, hogy amikor egy navigáló metódusát hívják, akkor lecsekkolja, hogy
az aktuális conversion mégis milyen állapotban van, s amennyiben
long-running, akkor "lelövi", tranzienssé teszi (mindezt azért, hiszen
ha a navigációs menün keresztül megyünk el valahonnan, akkor valszeg
elegünk van abból a "beszélgetésből" :D ).