调用core Liferay的操作';使用自定义portlet的s portlet(文档库)';s形

调用core Liferay的操作';使用自定义portlet的s portlet(文档库)';s形,liferay,Liferay,提交自定义表单时,我需要调用文档库portlet的EditFileEntryAction(core liferay) 我创建了以下actionURL: <liferay-portlet:actionURL var="editFileEntryURL" portletName="<%=PortletKeys.DOCUMENT_LIBRARY %>" doAsGroupId="${scopeGroupId}" refererPlid="${plid}"> <po

提交自定义表单时,我需要调用文档库portlet的
EditFileEntryAction
(core liferay)

我创建了以下actionURL:

<liferay-portlet:actionURL var="editFileEntryURL" portletName="<%=PortletKeys.DOCUMENT_LIBRARY %>" doAsGroupId="${scopeGroupId}" refererPlid="${plid}">
    <portlet:param name="struts_action" value="/document_library/edit_file_entry" />
    <portlet:param name="uploader" value="classic" />
</liferay-portlet:actionURL>

我想提交以下表格:

<aui:form action="<%= editFileEntryURL %>" cssClass="lfr-dynamic-form" enctype="multipart/form-data" method="post" name="fm">
    <aui:input name="<%= Constants.CMD %>" type="hidden" />
    <aui:input name="uploadProgressId" type="hidden" value="<%= uploadProgressId %>" />
    <aui:input name="repositoryId" type="hidden" value="${themeDisplay.scopeGroupId}" />
    <aui:input name="folderId" type="hidden" value="${categoryFolderId}" />
    <aui:input name="fileEntryId" type="hidden" value="0" />
    <aui:input name="workflowAction" type="hidden" value="<%= WorkflowConstants.ACTION_PUBLISH %>" />

    <aui:input name="file" style="width: auto;" type="file">
        <aui:validator name="acceptFiles">
            '<%= StringUtil.merge(PrefsPropsUtil.getStringArray(PropsKeys.DL_FILE_EXTENSIONS, StringPool.COMMA)) %>'
        </aui:validator>
    </aui:input>

    <aui:input name="title">
        <aui:validator errorMessage="you-must-specify-a-file-or-a-title" name="custom">
            function(val, fieldNode, ruleValue) {`enter code here`
                return ((val != '') || A.one('#<portlet:namespace />file').val() != '');
            }
        </aui:validator>
    </aui:input>

    <aui:button type="submit" value="save" name="save" />
</aui:form>

''
函数(val、fieldNode、ruleValue){`在此处输入代码`
return((val!='')|| A.one('#file').val()!='';
}

我建议不要对Liferay的文档库portlet具有HTTP级别的交叉依赖。而是实现您自己的上载portlet,并使用文档库API自己存储文件。

您可以共享正在创建的URL吗?正在创建的URL:您是否使用调试器进行了验证,它是否命中了
com.liferay.portlet.documentlibrary.action.EditFileEntryAction的
processAction
方法?没有命中com.liferay.portlet.documentlibrary.action.EditFileEntryAction的processAction方法如果是,则表示URL是好的,但还需要传递其他参数,如,
cmd
as
常量。编辑
fileEntryId
as
0
folderId
as
0
以从根目录上载文件。