gpt4 book ai didi

java - 如何添加一个没有 xml 配置的 RequestContextListener?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:43:05 27 4
gpt4 key购买 nike

我需要为我的 Spring Boot 应用程序添加一个监听器,在 web.xml 中它看起来像

<listener>
<listener-class>
org.springframework.web.context.request.RequestContextListener
</listener-class>
</listener>

我使用 no-web.xml 配置,所以我有一个类似的类

public class AppFilterConfig extends AbstractAnnotationConfigDispatcherServletInitializer {

@Override
protected Filter[] getServletFilters() {
CharacterEncodingFilter filter = new CharacterEncodingFilter();
filter.setEncoding("UTF8");
filter.setForceEncoding(true);
Filter[] filters = new Filter[1];
filters[0] = filter;
return filters;
}

private int maxUploadSizeInMb = 5 * 1024 * 1024; // 5 MB

@Override
protected Class<?>[] getRootConfigClasses() {
return null;
}

@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}

@Override
protected String[] getServletMappings() {
return new String[]{"/"};
}

@Override
protected void registerDispatcherServlet(ServletContext servletContext) {
super.registerDispatcherServlet(servletContext);
servletContext.addListener(new HttpSessionEventPublisher());

}

@Override
public void onStartup(ServletContext servletContext) throws ServletException {

super.onStartup(servletContext);
servletContext.addListener(new RequestContextListener());
}

}

从上面的代码可以看出,我已经为 onStartup(ServletContext servletContext) 方法添加了一个监听器,但它没有帮助,因为我仍然得到

In this case, use RequestContextListener or RequestContextFilter to expose the current request.

这条消息。如何正确地将监听器添加到我的 Spring Boot 应用程序?

最佳答案

我创建了这个类并解决了我的问题。

@Configuration
@WebListener
public class MyRequestContextListener extends RequestContextListener {
}

关于java - 如何添加一个没有 xml 配置的 RequestContextListener?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38202621/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com