<div dir="ltr"><div>Hi,</div><div><br></div><div>Am using Keycloak with my JEE 7 application deployed on Wildfly.</div><div><br></div><div>I would like to get a handle on the currently authenticated user by doing this :</div><div><br></div><div><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>import</b></font></font><font> javax.ejb.LocalBean;</font></p><font>
</font><b><font color="#7f0055"><font color="#7f0055"></font></font></b><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>import</b></font></font><font> javax.faces.bean.SessionScoped;</font></p><font>
</font><b><font color="#7f0055"><font color="#7f0055"></font></font></b><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>import</b></font></font><font> javax.inject.Named;</font></p><font>
<p align="LEFT"></p>
</font><b><font color="#7f0055"><font color="#7f0055"></font></font></b><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>import</b></font></font><font> javax.ws.rs.core.Context;</font></p><font>
</font><b><font color="#7f0055"><font color="#7f0055"></font></font></b><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>import</b></font></font><font> javax.ws.rs.core.SecurityContext;</font></p><font>
<p align="LEFT"></p>
</font><b><font color="#7f0055"><font color="#7f0055"></font></font></b><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>import</b></font></font><font> org.keycloak.KeycloakPrincipal;</font></p><font>
<p align="LEFT"></p>
</font><font color="#646464"><font color="#646464"><p align="LEFT">@LocalBean</p>
<p align="LEFT">@Named</p>
<p align="LEFT">@SessionScoped</p>
</font></font><b><font color="#7f0055"><font color="#7f0055"></font></font></b><font color="#7f0055"><font color="#7f0055"></font></font><p align="LEFT"><font color="#7f0055"><font color="#7f0055"><b>public</b></font></font><font> </font><b><font color="#7f0055"><font color="#7f0055">class</font></font></b><font> SessionController {</font></p><font>
<p align="LEFT"></p>
</font><p align="LEFT"><font>    </font><font color="#646464"><font color="#646464">@Context</font></font></p><font color="#646464"><font color="#646464">
</font></font><font></font><p align="LEFT"><font>    </font><b><font color="#7f0055"><font color="#7f0055">private</font></font></b><font> SecurityContext </font><font color="#0000c0"><font color="#0000c0">securityContext</font></font><font>;</font></p><font>
<p align="LEFT">    </p>
</font><p align="LEFT"><font>    </font><b><font color="#7f0055"><font color="#7f0055">public</font></font></b><font> </font><b><font color="#7f0055"><font color="#7f0055">void</font></font></b><font> method() {</font></p><font>
</font><p align="LEFT"><font>        KeycloakPrincipal </font><u><font color="#6a3e3e"><font color="#6a3e3e">principal</font></font></u><font> = (KeycloakPrincipal)</font><font color="#0000c0"><font color="#0000c0">securityContext</font></font><font>.<u>getUserPrincipal</u>();</font></p><font>
<p align="LEFT">    }</p>
<p align="LEFT"></p>
<p>}</p><p>Unfortunately i get a NullPointerException on the call to securityContext.</p><p>Am i doing things right ? Shouldn&#39;t i get a security context this way ?</p><p>Thanks for any help.</p></font></div></div>