资源权限检查器 Liferay 7

Resourse permission checker Liferay 7

我的 portlet 带有 CRUD 操作(不同的包、服务等)。

我想在此 portlet 的许可下实施自定义操作。

我创建 default.xml 文件:

<?xml version="1.0"?>

<resource-action-mapping>
       <portlet-resource>
       <portlet-name>com.mypackage.MyPortlet</portlet-name>
          <permissions>
           <supports>
               <action-key>Whosebug_ACTION</action-key>
           </supports>
           </permissions>
       </portlet-resource>
</resource-action-mapping>

并创建 portlet.properties:

include-and-override=portlet-ext.properties
resource.actions.configs=resource-actions/default.xml

问题是 - 为什么我在控制面板中除了默认操作寿命 "ADD_TO_PAGE" 之外什么都没有?我做错了什么?

更新: 这个变体也不起作用。 =(

<?xml version="1.0"?>

<!DOCTYPE resource-action-mapping PUBLIC "-//Liferay//DTD Resource Action Mapping 7.0.0//EN" "http://www.liferay.com/dtd/liferay-resource-action-mapping_7_0_0.dtd">

<resource-action-mapping>

<model-resource>
        <model-name>mypackage.web.portlet.MyPortlet</model-name>
    <portlet-ref>
        <portlet-name>mypackage_web_portlet_MyPortlet</portlet-name>
    </portlet-ref>
    <root>true</root>
    <weight>1</weight>
    <permissions>
        <supports>
            <action-key>VIEW_TEST</action-key>
        </supports>
        <site-member-defaults>
            <action-key>SUBSCRIBE_TEST</action-key>
        </site-member-defaults>
        <guest-defaults />
        <guest-unsupported>
            <action-key>ADD_ENTRY_TEST</action-key>
            <action-key>PERMISSIONS_TEST</action-key>
            <action-key>SUBSCRIBE_TEST</action-key>
        </guest-unsupported>
    </permissions>
</model-resource>

你应该使用 <model-resource> 块而不是 <portlet-resource>:Portlet-Resource 由 Liferay 处理(并使用预定义的词汇表),而你的 portlet 或服务引入了它自己的数据类型,你可以定义自己的权限。