如何使用 siteMesh 的可打印视图?
How to use printable view from siteMesh?
我正在使用带有 Spring Frameworks 4.1 的 siteMesh 2.4.2。 UI 构建为 head/content/footer 样式。
这适用于大多数情况。但是当我尝试生成可打印视图时,我发现我做不到,因为所有 JSP 都被包裹在那种样式中。
我怎么能简单地不应用 SiteMesh 装饰器?但是直接请求普通 JSP 而不是使用 MAV 样式将所有内容都放在装饰框架中。
编辑
我尝试按照
的说明进行操作
http://wiki.sitemesh.org/wiki/display/sitemesh/Decorating+Beyond+URL+Patterns
我将可打印映射器添加到我的 sitemesh.xml 中:
<mapper class="com.opensymphony.module.sitemesh.mapper.PrintableDecoratorMapper">
<param name="decorator" value="printable" />
<param name="parameter.name" value="printable" />
<param name="parameter.value" value="true" />
</mapper>
然后我将元添加到我的 JSP header 中:
<meta name="decorator" content="printable">
而且我还尝试将其作为参数传递到我的控制器中,例如:
mav.setViewName("/WEB-INF/sitemesh-decorators/printableView.jsp?decorator=printable&");
结果是一样的,框架(header,页脚)还在。
有什么想法吗??请帮忙!
经过大约几周的思考和尝试,我差点放弃修复它。
意外地,我发现我的可打印 JSP url 不是我的预期,因为我没有看到参数 "printable=true"。突然,我发现了原因,这可能会帮助其他处于我处境的人。
在我的情况下,我使用 ModelAndView 通过使用“.setViewName”调用从 Spring MVC 控制器调出我的可打印视图,然后通过附加 [ 将参数放入 JSP =23=] 最后。这是完全错误的。
正确的方法是:当我从其他 JSP 调用控制器时,必须将 "printable=true" 放在请求映射路径的末尾。当我这样做时,可打印视图如我所料显示。
看起来是这样的:
<a class="button" href="${pageContext.request.contextPath}/printPlacementEntityByPartner?placementIdKey=${placemententity.placementId}&printable=true&">
希望这对处于我这种情况的其他人有所帮助。
我正在使用带有 Spring Frameworks 4.1 的 siteMesh 2.4.2。 UI 构建为 head/content/footer 样式。
这适用于大多数情况。但是当我尝试生成可打印视图时,我发现我做不到,因为所有 JSP 都被包裹在那种样式中。
我怎么能简单地不应用 SiteMesh 装饰器?但是直接请求普通 JSP 而不是使用 MAV 样式将所有内容都放在装饰框架中。
编辑
我尝试按照
的说明进行操作http://wiki.sitemesh.org/wiki/display/sitemesh/Decorating+Beyond+URL+Patterns
我将可打印映射器添加到我的 sitemesh.xml 中:
<mapper class="com.opensymphony.module.sitemesh.mapper.PrintableDecoratorMapper">
<param name="decorator" value="printable" />
<param name="parameter.name" value="printable" />
<param name="parameter.value" value="true" />
</mapper>
然后我将元添加到我的 JSP header 中:
<meta name="decorator" content="printable">
而且我还尝试将其作为参数传递到我的控制器中,例如:
mav.setViewName("/WEB-INF/sitemesh-decorators/printableView.jsp?decorator=printable&");
结果是一样的,框架(header,页脚)还在。
有什么想法吗??请帮忙!
经过大约几周的思考和尝试,我差点放弃修复它。
意外地,我发现我的可打印 JSP url 不是我的预期,因为我没有看到参数 "printable=true"。突然,我发现了原因,这可能会帮助其他处于我处境的人。
在我的情况下,我使用 ModelAndView 通过使用“.setViewName”调用从 Spring MVC 控制器调出我的可打印视图,然后通过附加 [ 将参数放入 JSP =23=] 最后。这是完全错误的。
正确的方法是:当我从其他 JSP 调用控制器时,必须将 "printable=true" 放在请求映射路径的末尾。当我这样做时,可打印视图如我所料显示。
看起来是这样的:
<a class="button" href="${pageContext.request.contextPath}/printPlacementEntityByPartner?placementIdKey=${placemententity.placementId}&printable=true&">
希望这对处于我这种情况的其他人有所帮助。