Quantcast
Channel: Active questions tagged redis+java - Stack Overflow
Viewing all articles
Browse latest Browse all 2204

Configuration sprind-session-data-redis in spring mvc based on Java class config

$
0
0

I add spring-session-data-redis 2.3.1 for store tomcat session on redis so I got this exception:How fixed this exception?

Oct 26, 2020 10:41:40 PM org.apache.catalina.core.StandardContext filterStartSEVERE: Exception starting filter [springSessionRepositoryFilter]org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'springSessionRepositoryFilter' availableat org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:687)at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1207)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:284)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1087)at org.springframework.web.filter.DelegatingFilterProxy.initDelegate(DelegatingFilterProxy.java:326)at org.springframework.web.filter.DelegatingFilterProxy.initFilterBean(DelegatingFilterProxy.java:235)at org.springframework.web.filter.GenericFilterBean.init(GenericFilterBean.java:199)at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285)at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:112)at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4637)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5282)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1421)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1411)at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)at java.util.concurrent.FutureTask.run(FutureTask.java)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)at java.lang.Thread.run(Thread.java:748)

My spring session config is:

@Order(3)@Configuration@EnableRedisHttpSessionpublic class HttpSessionConfig extends AbstractHttpSessionApplicationInitializer {    @Bean    @SpringSessionRedisConnectionFactory    public JedisConnectionFactory connectionFactory(){        return new JedisConnectionFactory();    }}
public class WebsiteInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {    @Override    protected Class<?>[] getRootConfigClasses() {        return new Class[]{SpringRootConfig.class};    }    @Override    protected Class<?>[] getServletConfigClasses() {        return new Class[]{SpringWebConfig.class,HttpSessionConfig.class};    }    @Override    protected String[] getServletMappings() {        return new String[]{"/"};    }    @Override    public void onStartup(ServletContext servletContext) throws ServletException {        super.onStartup(servletContext);        servletContext.addListener(new SessionListener());        servletContext.getSessionCookieConfig().setMaxAge(90 * 24 * 60 * 60);        servletContext.getSessionCookieConfig().setName("sess");        FilterRegistration.Dynamic fr = servletContext.addFilter("encodingFilter", CharacterEncodingFilter.class);        fr.setInitParameter("encoding", "UTF-8");        fr.setInitParameter("forceEncoding", "true");        fr.addMappingForUrlPatterns(null, true, "/*");    }}
@Order(1)@Import({HibernateConfiguration.class})@Configuration@ComponentScan({"my.adapters.website.services"})@EnableAsync(proxyTargetClass = true)@PropertySource(value = "classpath:config.properties", encoding = "utf-8")@PropertySource(value = "classpath:literal.properties", encoding = "utf-8")@PropertySource(value = "classpath:x-config.properties", encoding = "utf-8")public class SpringRootConfig {    @Bean    public JavaMailSender getJavaMailSender() {        JavaMailSenderImpl mailSender = new JavaMailSenderImpl();        return mailSender;    }}
@Order(2)@EnableWebMvc@Configuration@ComponentScan("/")public class SpringWebConfig extends WebMvcConfigurerAdapter {    @Override    public void addResourceHandlers(ResourceHandlerRegistry registry) {        registry.addResourceHandler("/assets/**")                .addResourceLocations("/assets/");        registry.addResourceHandler("/**")                .addResourceLocations("/assets/js/sw.js", "/assets/js/pushe-sw.js");    }    @Bean    public InternalResourceViewResolver viewResolver() {        InternalResourceViewResolver viewResolver                = new InternalResourceViewResolver();        viewResolver.setViewClass(JstlView.class);        viewResolver.setPrefix("/WEB-INF/views/jsp/");        viewResolver.setSuffix(".jsp");        return viewResolver;    }    @Bean(name = "messageSource")    public MessageSource getMessageResource() {        ReloadableResourceBundleMessageSource messageResource = new ReloadableResourceBundleMessageSource();        messageResource.setBasename("classpath:i18n/messages");        messageResource.setDefaultEncoding("UTF-8");        return messageResource;    }    @Bean    CharacterEncodingFilter characterEncodingFilter() {        CharacterEncodingFilter filter = new CharacterEncodingFilter();        filter.setEncoding("UTF-8");        filter.setForceEncoding(true);        filter.setForceResponseEncoding(true);        filter.setForceRequestEncoding(true);        return filter;    }    @Bean(name = "multipartResolver")    public CommonsMultipartResolver multiPartResolver() {        CommonsMultipartResolver resolver = new CommonsMultipartResolver();        return resolver;    }    @Bean(name = "localeResolver")    public LocaleResolver getLocaleResolver() {        LocaleResolver resolver = new UrlLocaleResolver();        return resolver;    }    @Override    public void addInterceptors(InterceptorRegistry registry) {        UrlLocaleInterceptor localeInterceptor = new UrlLocaleInterceptor();        registry.addInterceptor(localeInterceptor).addPathPatterns("/en/*", "/tr/*");    }}

Viewing all articles
Browse latest Browse all 2204

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>