频道:
channel类型的元素是页面上portlet的发布。一个频道可能在页面上出现多次,但通常不推荐这样做。
属性 | 描述 | 必填 | 默认 |
---|
ID | ID值。按照约定,文件夹是“s#”,通道是“n#”,其中#是一个数值。名称是任意的。数字部分必须是XML文件中唯一的数字值(在所有文件夹和通道中唯一);例如,你不能在同一个XML文件中同时有"s1"和"n1",因为"s"和"n"没有存储到数据库中。 用户自定义的页面在数据库中表示“删除ID x”所以一旦用于生产布局,你不能改变现有的ID值或重用ID值或uPortal将无法正确呈现用户的页面,修改他们的布局。 在使用Admin UI修改布局后,您应该导出片段布局并将其存储在源代码存储库中,这样您就可以使用ant initdb或ant initportal在其他环境中重新创建布局。 | Y | | fname | 发布portlet时创建的portlet的唯一名称。 | Y | | hidden | 过时的参数从uPortal 2.x。总是设置为false | ? | | immutable | 过时的参数从uPortal 2.x。总是设置为false | ? | false | unremovable | 来自早期uPortal版本的过时参数。不要使用。 | N | false | dlm:deleteAllowed | 确定具有自定义布局权限的用户是否可以删除此portlet | N | true | dlm:moveAllowed | 确定具有自定义布局权限的用户是否可以移动此portlet | N | true |
结构属性:
结构属性元素的子元素取决于它在层次结构中的位置。结构XSLT转换不关心结构属性是否应用于选项卡或列,但主题XSLT转换在文件夹层次结构中的特定级别上对值进行操作时就会关心。结构属性的形式如下:
<structure-attribute>
<name>width</name>
<value>40%</value>
</structure-attribute>
要使结构属性名称有效,必须在结构样式表定义文件中定义它。以https://github.com/Jasig/uPortal/blob/uportal-4.2.1/uportal-war/src/main/data/required_entities/stylesheet-descriptor/DLMTabsColumns.stylesheet-descriptor.xml#L49-L67为例。
uPortal 4.3新增功能:value字段可以是一个形式为${Expression}的Spring Expression language (SpEL)表达式(参见http://docs.spring.io/spring/docs/4.0.5.RELEASE/spring-framework-reference/html/expressions.html),其表达式形式为:
$ {request.method}。访问Http请求。例子:$ {request.contextPath}
$ {person.method}。对Person对象的访问。例子:$ {person.attributeMap [' collegge ']}
$ {@bean.method}。在根应用程序上下文中按名称访问任意bean。例子:$ {@PortalDb.class.toString () ?:未知}
不要忘记,除了创建*-fragment-layout.xml文件,你还需要:
创建一个相应的*-fragment-definition.xml文件
在您的片段布局XML文件中创建一个与username属性相对应的用户,参考:academics-lo.user.xml
将用户添加到“片段所有者”组或“可订阅片段”组。参考:Fragment_Owners.group-membership.xml?
|