在 Spring+Tiles2 应用程序中设置 HTML 标题的最佳方法?
我的 Spring Web 应用程序使用 Tiles 作为视图技术,但存在可用性问题。 目前,所有页面都显示相同的 HEAD_TITLE
并且 PAGE_TITLE
是特定于页面的:
<html>
<head><title>HEAD_TITLE</title></head>
<body>
<h1>PAGE_TITLE</h1>
</body>
</html>
这是一个主要的可用性问题,因为浏览器历史记录会列出应用程序的所有不同页面相同的标题。 所有页面的 HEAD_TITLE
都相同的原因是我还没有找到合理的方法来使用 PAGE_TITLE
作为 HEAD_TITLE
。
在大多数情况下,PAGE_TITLE
来自带有
标记的消息包,并且 一些参数被传递给它。 Tiles 布局是这样的,此时 HEAD_TITLE
应该已设置,因为 web 应用程序的所有页面都使用相同的通用布局,该布局定义了 元素。页面以及其他内容。
有什么建议如何解决这个可用性问题吗? 我是否应该在 Spring 控制器中为所有页面设置“pageTitle”请求属性,并将其用作 PAGE_TITLE
和 HEAD_TITLE
? 或者是否可以以某种方式在页面特定的 JSP 中设置 HEAD_TITLE?
I have a usability problem in my Spring webapp which uses Tiles as the view technology.
At the moment all of the pages display the same HEAD_TITLE
and the PAGE_TITLE
is page specific:
<html>
<head><title>HEAD_TITLE</title></head>
<body>
<h1>PAGE_TITLE</h1>
</body>
</html>
This is a major usability problem as the browsers history lists all different pages of the application with the same title. The reason why the HEAD_TITLE
is same for all pages is that I haven't found a reasonable way to use the PAGE_TITLE
as the HEAD_TITLE
.
In most cases the PAGE_TITLE
comes from a message bundle with <fmt:message />
tag and
some parameters are passed to it. The Tiles layout is such that the HEAD_TITLE
should be already set at that point because all pages of the webapp use the same common layout which defines the <HEAD>
elements of the pages amongst other stuff.
Any suggestions how to fix this usability problem? Should I set a "pageTitle" request attribute in my Spring controllers for all pages and use that as the PAGE_TITLE
and also as the HEAD_TITLE
? Or is it possible to somehow set the HEAD_TITLE in the page specific JSP?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
创建一般定义并定义 headTitle 和 pageTitle 属性。
在更具体的定义中设置适当的值。
使用
标签在 jsp 页面中检索此类值。参考:- http://tiles.apache.org/framework/ tiles-jsp/tagreference.html#tiles:getAsString
Create a general definition and define headTitle and pageTitle attributes.
Set appropriate values in more specific definition.
Use
<tiles:getAsString />
tag to retrieve such values in jsp page.Reference:- http://tiles.apache.org/framework/tiles-jsp/tagreference.html#tiles:getAsString