在Liferay框架中拥有它自身的标签,虽然Portlet也有它自身的标签,但是Portlet的标签不能完全满足我们的需求,下面就介绍几个开发中经常用到的标签
<portlet:actionURL><portlet:renderURL>:这2个是把整个页面当做一个提交到相应的Action中进行处理,因为Portlet中把request分成了两种一种是actionRequest,另外一种就是renderRequest,而<portlet:actionURL>是属于actionRequest中的一种,写在<form>中的action当点击提交的时候用户会把当前表单提交到相应的action中,调用ProcessAction进行处理,最后经过render方法显示到相应的页面.而<portlet:renderURL>属于renderRequest中的一种,把当前的action传到对应要显示的JSP页面上,2者工作原理同Struts1的工作原理差不多,只是把Action分成了2部分分开实现.
actionURL参数分别有:windowState当前窗口大小,最大,最下,正常
portletMode:当前portlet状态,可以定义当前portlet的标题是否可以编辑
var:自定义namespace输出的名称(portlet实例的名称)
secure:其他portlet是否可以连接到该portlet,默认为true,如果设置为false的时候其他portlet访问该portlet得时候会出现JspException
<portlet:param>:定义的可传参数,格式为<portlet:param name="action" value="hello edward"/> name为要穿过去的字符串名字,value就是要可传送的值,一般结合<portlet:actionURL>与<portlet:renderURL>用,可以使用getParameter方法取得该name的值
<portlet:defineObjects>让当前jsp可以应用到所有portlet的功能和方法.可以直接调用portlet下的方法
<liferay-ui:tabs> :Liferay中自带的Tab标签UI,可以根据其name属性显示相应的标签名,多个标签名字用,分割,param参数是是tabs1还是tabsn,命名规范是tabsx,是几级菜单的标识,url0是每个对应的name名字的要跳转的页面,最大支持10个标签名.
<portlet:namespace>:每个portlet对应的名字空间,生成每个唯一的标志ID,该ID根据portlet自己创建的id生成的,例如_1010Unistore_,该标签可以用于js的嵌入或者在HTMl中嵌入,保证每个ID的唯一,例如每个HTML中的ID标志
<liferay-util:include>Liferay下面的页面引入的工具类,可以功能同jsp:include基本上一样,但是他可以根据每个引入的页面设置默认需要显示的内容 属性为page="xx.jsp"
<liferay-util:param>Liferay下面页面引入工具类参数设置,配合<liferay-util:include>使用可以根据引入的页面对对应的标签设置相应的参数,如name=tabs1 value=setup 则对tabs1中标签为setup设置默认值.
<liferay-ui:error> Liferay下错误信息显示工具类,可以在属性exception中设定需要调用的.class文件 message中定义个性化的错误信息
<liferay-ui:message>Liferay下信息提示,可以配合portal-impl.jar包下面的content文件夹下的Language_xx_XX.properties文件进行读取相应value值
<liferay-ui:search-iterator>Liferay下的搜索查询工具类(从字面上看),可以根据SearchContainer类创建从左到有的菜单头信息.