【发布时间】:2014-05-15 08:51:39
【问题描述】:
我目前正在使用带有 Freemarker 的 Spring MVC 作为视图技术(模板引擎)。但是,包含多个模板文件会导致输出不再被很好地格式化。我当前的 HTML 输出可能如下所示:
<!-- Newlines before Start-tag -->
<html>
<head>
<title>Title</title>
</head>
<body>
<!-- Intendation is resetted -->
<div id="page" class="container">
<div class="row">
<div id="content" class="col-xs-12">
<div class="row">
..</div>
<!-- Muliple close tags on same line -->
</div></div>
</div>
</body>
</html>
为了便于可视化调试,我想使用一些 HTML/XML 格式化程序手动格式化输出。但是在 Spring 中,在将模型传递给视图技术(在我的情况下为 Freemarker)后,我无法控制输出。我该怎么办?
我的猜测是创建一个 servlet 过滤器并将其注册为在模板执行后执行。我将如何在纯 Spring Java Config 中执行此操作?
【问题讨论】:
-
在您的 Web 应用程序初始化中注册
DelegatingFilterProxy并将其委托给Filterbean。 -
如何仅使用 Java 配置来做到这一点?另一个问题是我看不到 Freemarker 在哪里注册它的过滤器。如果有帮助,这里是相关代码:github.com/Metalcon/middleware/blob/develop/src/main/java/de/…github.com/Metalcon/middleware/blob/develop/src/main/java/de/…
-
在
getSerlvetFilters方法中注册 DelegatingFilterProxy 并将@Bean方法放入创建自定义过滤器的太上下文中。
标签: java spring spring-mvc servlets servlet-filters