SpringBoot интегрирует клиент Cas, программа не запускает мой перегруженный код (onSuccessfulValidation) при отладке - PullRequest
0 голосов
/ 20 июня 2019

Когда я использую springBoot для интеграции клиента Cas, в моем приложении я расширил Cas20ProxyReceivingTicketValidationFilter и попытался переопределить метод onSuccessfulValidation, чтобы сделать что-то, но программа не берет мой перегруженный код (onSuccessfulValidation) при отладке, и мой кодследующим образом:

CustomCasTicketValidationFilter.java

public class CustomCasTicketValidationFilter extends Cas20ProxyReceivingTicketValidationFilter{


    @Override
    protected void initInternal(FilterConfig filterConfig) throws ServletException {
        super.initInternal(filterConfig);
    }

    @Override
    protected void onSuccessfulValidation(HttpServletRequest request, HttpServletResponse response, Assertion assertion) {
        setRedirectAfterValidation(true);
        if (assertion == null || assertion.getPrincipal() == null) {
            return;
        }
    }

    @Override
    protected void onFailedValidation(HttpServletRequest request, HttpServletResponse response) {
    }
}

CasConfig.java

@Bean
public FilterRegistrationBean registTicketValidationFilter() {
    final FilterRegistrationBean registrationBean = new FilterRegistrationBean();
    registrationBean.setFilter(new CustomCasTicketValidationFilter());
    registrationBean.setName("CAS Validation Filter");
    registrationBean.addInitParameter("casServerUrlPrefix", "http://xxx:8086/cas");
    registrationBean.addInitParameter("serverName", "http://localhost");
    registrationBean.setOrder(Ordered.LOWEST_PRECEDENCE);
    return registrationBean;
}
...