问题叙述:
写了一个拦截器,在某个方法之后,操作下数据库,但操作数据库的时候报空指针异常。追究方法是HandlerExecutionChain
的triggerAfterCompletion()
出错。翻阅资料,发现是注入方式有问题。
原代码
@Configuration
public class InterceptorConfigurer extends WebMvcConfigurerAdapter {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new SessionInterceptor())
.addPathPatterns("/bpm/task/doAction");
super.addInterceptors(registry);
}
}
修正后
@Configuration
public class InterceptorConfigurer extends WebMvcConfigurerAdapter {
@Bean
public SessionInterceptor getSessionInterceptor(){
return new SessionInterceptor();
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(getSessionInterceptor())
.addPathPatterns("/bpm/task/doAction");
super.addInterceptors(registry);
}
}