我需要将XML转换为pdf。为此,我需要读取一个xsl文件,该文件位于inputstream中的工作区内。这个逻辑应该在我的itemwriter类中。如何在我的itemwriter类中获取servletcontext?
答案 0 :(得分:0)
创建一个带有private static staticServletContext
字段和
public static getServletContext() {
return staticServletContext;
}
方法
在servlet上下文可用的任何位置添加初始化逻辑。例如。在控制器中添加HttpServletRequest
参数并调用request.getServletContext()
以将上下文分配给ServletContextHolder bean的静态字段。
然后只需访问ItemWriter中的静态字段。
或者,您可以将请求存储在线程本地存储中,并从请求中获取上下文。如果从请求可用的控制器调用ItemWriter线程,则可以访问该请求。