Liferay标记详解

在如下图所示的添加Portlet的文本显示,有一个非常有趣的特性:

当我们吧文本的代码替换成小写的"add",则最终显示出来的是大写的"Add",而我们把文本替换成小写的"modify",则原封不动显示的是"modify",这是什么特性呢?

为此,我们可以进行一系列的研究,首先我们定位到显示这个文字的代码,它位于/html/portlet/layout_configuration/view_category.jsp的第138行:

....
                <div
                        class="lfr-portlet-item <c:if test="<%= portletLocked %>">lfr-portlet-used</c:if> <c:if test="<%= portletInstanceable %>">lfr-instanceable</c:if>"
                        id="<portlet:namespace />portletItem<%= portlet.getPortletId() %>"
                        instanceable="<%= portletInstanceable %>"
                        plid="<%= plid %>"
                        portletId="<%= portlet.getPortletId() %>"
                        title="<%= PortalUtil.getPortletTitle(portlet, application, locale) %>"
                    >
                        <p><%= PortalUtil.getPortletTitle(portlet, application, locale) %> <a href="javascript:;"><liferay-ui:message key="modify" /></a></p>
                    </div> 

....

然后这个标记<liferay-ui>是定义在liferay-ui.tld文件中:

我们这里可以看到key是一个必须的属性,并且这个标记对应的java类是com.liferay.taglib.ui.MessageTag:

<tag>
        <name>message</name>
        <tag-class>com.liferay.taglib.ui.MessageTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>arguments</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>key</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>translateArguments</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>unicode</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索标记
, 文本
, true
, false
, 小写
特性
炉石盒子手牌标记详解、liferay、liferay portal、liferay技术过时了、liferay 教程,以便于您获取更多的相关知识。

时间: 2024-06-16 04:40:07

Liferay标记详解的相关文章

Liferay Dockbar详解

Dockbar是Liferay中最活跃的元素了,因为几乎用户的所有的操作都要从Dockbar开始,所以我们这里深入的来分析下dockbar. Dockbar的结构: Dockbar从整体上分2部分,一部分是左边的<ul class="aui-toolbar"> 另外一部分是右边的<ul class="aui-toolbar user-toolbar"> 所以,最终Dockbar的结构为(我省略了很多代码): <%@ include fi

详解网页制作中使用的HTML常用标记

网页|详解 <HTML>整份文件处于标记<HTML>与</HTML>之间   <HEAD>由<HEAD>至</HEAD>称为开头   <TITLE>只可出现开头部分,所标示的是文件的标题   <BODY><BODY>至</BODY>称文本 如:<body text="#000000" link="#000000" alink="#0

Mybatis动态SQL之if、choose、where、set、trim、foreach标记实例详解_java

动态SQL就是动态的生成SQL. if标记 假设有这样一种需求:查询用户,当用户名不等于"admin"的时候,我们还需要密码为123456. 数据库中的数据为: MyBatisConfig.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

JS表格组件神器bootstrap table详解(基础版)_javascript技巧

一.Bootstrap Table的引入 关于Bootstrap Table的引入,一般来说还是两种方法: 1.直接下载源码,添加到项目里面来. 由于Bootstrap Table是Bootstrap的一个组件,所以它是依赖Bootstrap的,我们首先需要添加Bootstrap的引用. 2.使用我们神奇的Nuget 打开Nuget,搜索这两个包 Bootstrap已经是最新的3.3.5了,我们直接安装即可. 而Bootstrap Table的版本竟然是0.4,这也太坑爹了.所以博主建议Boot

Flex Data Binding详解

Data BindIng简单的说就是当绑定源属性发生变化时,Flex 会把绑定源变化后属性的值赋给目的物的属性.做到了数据同步. Data BindIng 什么时候发生: 1.在绑定源属性值发生改变时发生. 2.在绑定源发出initialize事件时绑定发生一次. 让属性具有可绑定功能: 一般的,只要在属性前加上 [Bindable] 或 [Bindable(event="eventname")] 元标记即可 注意: 如果没有标出触发绑定的事件,正如[Bindable],Flex会自动

PHP的XML模式详解

研究与 php(做为现在的主流开发语言) 5 捆绑在一起的 xml(标准化越来越近了)Reader 库,它使 php(做为现在的主流开发语言) 页面能够以高效的流模式来处理 xml(标准化越来越近了) 文档. php(做为现在的主流开发语言) 5 引入了新的类 xml(标准化越来越近了)Reader,用于读取可扩展标记语言(Extensible Markup Language,xml(标准化越来越近了)).与 Simplexml(标准化越来越近了) 或文档对象模型(Document Object

AJAX核心对象-- XMLHttpRequest 对象使用详解 (一)

ajax|request|xml|xmlhttprequest|对象|详解 多数 Web 应用程序都使用请求/响应模型从服务器上获得完整的HTML 页面.常常是点击一个按钮,等待服务器响应,再点击另一个按钮,然后再等待,这样一个反复的过程.有了 Ajax 和 XMLHttpRequest 对象,就可以使用不必让用户等待服务器响应的请求/响应模型了. 本文中,Brett McLaughlin 介绍了如何创建能够适应不同浏览器的 XMLHttpRequest 实例,建立和发送请求,并响应服务器. 本

采用AJAX提高网站程序的带宽性能详解

ajax|程序|详解|性能 介绍 作为一个做网页性能测试的公司,我们一直关注新的开发技术在提高网页程序性能方面的影响.我们有不少用户遇到仅仅是因为他们网页的大小而影响其性能的问题.简单说--页面太大了不能在有限的带宽条件下达到理想的性能.很多情况下,在不同网页间包含的基本要素是相同的.例如,页头.页尾.导航条都很少变化,在一些程序中甚至根本没有变化.这点启发我们,如果程序只更新页面中需要改变的部分,将可以节省可观的带宽. 目标 为了验证这个理论,我们决定看看是否能让程序节约至少50%的带宽.我们

XSL系列函数详解

函数|详解 转载于:中国XML论坛 本期介绍多个XSL对于VBScript.JScript增加的方法.属性,以充分发挥XML的优势,用于< xsl:script >.< xsl:eval >标记内表达式的编写或< xsl:if >.< xsl:when >的expr属性. 一.absoluteChildNumber  含义:返回结点相对于它所有的兄弟(不论名字是否相同)的序号 语法:absoluteChildNumber(node) 参数:node ── 对