Liferay JournalItemSelectorCriterion的“未找到项目选择器视图”

Liferay JournalItemSelectorCriterion的“未找到项目选择器视图”,liferay,liferay-7,liferay-aui,Liferay,Liferay 7,Liferay Aui,这应该是一项简单的任务,按照开发人员教程创建一个选择弹出窗口: 我遵循本文,将标准替换为JournalItemSelectorCriterion RequestBackedPortletURLFactory requestBackedPortletURLFactory = RequestBackedPortletURLFactoryUtil.create( request ); List< ItemSelectorReturnType > itemSelectorReturnTyp

这应该是一项简单的任务,按照开发人员教程创建一个选择弹出窗口:

我遵循本文,将标准替换为JournalItemSelectorCriterion

RequestBackedPortletURLFactory requestBackedPortletURLFactory = RequestBackedPortletURLFactoryUtil.create( request );

List< ItemSelectorReturnType > itemSelectorReturnTypes = new ArrayList<>( );
itemSelectorReturnTypes.add( new UUIDItemSelectorReturnType( ) );

JournalItemSelectorCriterion itemSelectorCriterion = new JournalItemSelectorCriterion( );

itemSelectorCriterion.setDesiredItemSelectorReturnTypes( itemSelectorReturnTypes );

return itemSelector.getItemSelectorURL( requestBackedPortletURLFactory, selectedEventName, itemSelectorCriterion );
OSGi组件是有序的,否则我会得到一个空指针异常

单击时,按钮确实会按预期打开对话框,但没有任何条目,只是一个大的:

选择不可用

日志中只有一条消息:

找不到的项目选择器视图 com.liferay.journal.item.selector.criterial.journalitemselector标准

有什么想法吗

ps:使用Liferay 7 GA5

ps2:这里也有同样的问题:


有点奇怪:当我更改itemSelectorReturnTypes时,代码可以工作;添加新的URLItemSelectorReturnType

关于这方面的信息不多,所以我将在这里留下我的发现:这个特定的标准不支持UUID作为返回类型

$('#<portlet:namespace />selectJournal').on(
    'click',
    function(event) {
        var itemSelectorDialog = new A.LiferayItemSelectorDialog(
            {
                eventName: 'selectWcToSend',
                on: {
                    selectedItemChange: function(event) {
                        var selectedItem = event.newVal;

                        if (selectedItem) {
                            var itemValue = JSON.parse(
                            selectedItem.value
                        );
                        var wcUuid = itemValue.uuid;

                        $('#<portlet:namespace />uuid').val(wcUuid);
                    }
                }
                },
                title: '<liferay-ui:message key="select-web-content" />',
                url: "${journalSelectorUrl}"
            }
        );
        itemSelectorDialog.open();
    }
);
_supportedItemSelectorReturnTypes = Collections.unmodifiableList(
    ListUtil.fromArray(
        new ItemSelectorReturnType[] {
            new FileEntryItemSelectorReturnType(),
            new URLItemSelectorReturnType()
        }));