<ui:fragment rendered="#{sessionDetective.isAutor}">
... elements shown for the author ...
</ui:fragment>
<ui:fragment rendered="#{!sessionDetective.isAutor}">
... elements shown for the detective ...
</ui:fragment>
When the session bean asks the application bean for its role, the application bean may use @Inject of that session bean
so that the application bean can give to session beans of both parties the references to each other, after both will have arrived.
The application bean would thus remember
the reference to the session bean of the author that arrived until the detective will have also arrived. And then the session beans
could contact each other during the game in order to exchange the question/answer information to be sent to their clients directly
by calling their public setters and notify the pending requests without involving the application bean in that exchange.