【发布时间】:2016-09-25 07:16:00
【问题描述】:
我的问题很简单。我正在尝试将属性值注入过滤器。在我的控制器类中,我使用了以下代码,并且可以成功注入属性:
@Controller
public class StatementController {
@Value("${xapi.version}")
private String version;
...
}
但是当我在自定义过滤器中使用相同的代码时,我在版本属性中得到一个空值。这是代码:
public class HeaderFilter extends OncePerRequestFilter {
@Value("${xapi.version}")
private String version;
private Logger logger = Logger.getLogger(this.getClass());
@Override
protected void doFilterInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, FilterChain filterChain) throws ServletException, IOException {
logger.error(version==null);
...
我使用的是 springframework 4.0.9,这是我在 web.xml 中的过滤器配置的片段:
<filter>
<filter-name>header</filter-name>
<filter-class>com.application.HeaderFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>header</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
【问题讨论】:
标签: java spring spring-mvc filter