3131import  javax .servlet .*;
3232import  javax .servlet .http .HttpServletRequest ;
3333import  javax .servlet .http .HttpServletResponse ;
34- import  java .io .IOException ;
3534
3635public  class  OidcAuthFilter  implements  Filter  {
3736
@@ -44,11 +43,15 @@ public class OidcAuthFilter implements Filter {
4443    public  OidcAuthFilter (@ Named ("oidc" ) Config  config , OidcClient <?> client ) {
4544        this .config  = config ;
4645        this .client  = client ;
46+ 
47+         if  (!client .isInitialized ()) {
48+             client .init ();
49+         }
4750    }
4851
4952    @ Override 
5053    @ SuppressWarnings ("unchecked" )
51-     public  void  doFilter (ServletRequest  request , ServletResponse  response , FilterChain  chain ) throws   IOException ,  ServletException   {
54+     public  void  doFilter (ServletRequest  request , ServletResponse  response , FilterChain  chain ) {
5255        HttpServletRequest  req  = (HttpServletRequest ) request ;
5356        HttpServletResponse  resp  = (HttpServletResponse ) response ;
5457
@@ -57,7 +60,8 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha
5760        String  redirectUrl  = req .getParameter ("from" );
5861        context .getSessionStore ().set (context , Pac4jConstants .REQUESTED_URL , redirectUrl );
5962
60-         RedirectionAction  action  = client .getRedirectionAction (context )
63+         RedirectionAction  action  = client .getRedirectionActionBuilder ()
64+                 .getRedirectionAction (context )
6165                .orElseThrow (() -> new  IllegalStateException ("Can't get a redirection action for the request" ));
6266
6367        config .getHttpActionAdapter ().adapt (action , context );
0 commit comments