Я создал тип документа, и я использую Asset Publisher для отображения этих типов документов. Я хотел бы просмотреть значения, которые я связал с моим пользовательским документом, который Я создал библиотеку документов. Каков способ сделать это со скоростью?Как показать значения, связанные с пользовательским документом в liferay 6.2
Я нашел этот код Java
long classPK = GetterUtil.getLong((String) workflowContext.get(WorkflowConstants.CONTEXT_ENTRY_CLASS_PK))
long fileEntryTypeId = DLFileVersionLocalServiceUtil.getFileVersion(classPK).getFileEntry().getFileEntryTypeId()
DLFileEntryType dlFileEntryType = DLFileEntryTypeLocalServiceUtil.getFileEntryType(fileEntryTypeId);
List<DDMStructure> ddmStructures = dlFileEntryType.getDDMStructures();
DDMStructure ddmStructure = ddmStructures.get(0);
DLFileEntryMetadata dlFileEntryMetadata = DLFileEntryMetadataLocalServiceUtil.getFileEntryMetadata(ddmStructure.etStructureId(), classPK);
Fields fields = StorageEngineUtil.getFields(dlFileEntryMetadata.getDDMStorageId());
String value = GetterUtil.getString(fields.get("radio6255").getValue());
Я пытаюсь сделать это в скорости
#set($actualDoc = $curEntry.get(0))
#set($dlFileUtil = $serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryLocalService"))
#set($metadata2 = $serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryMetadataLocalService"))
#set($type = $serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryTypeLocalService"))
#set($gid = $getterUtil.getLong($request.get("theme-display").get("scope-group-id")))
#set($fileEntry = $dlFileUtil.getFileEntryByUuidAndGroupId($actualDoc.classUuid, $actualDoc.groupId))
#set($fileEntryTypeId = $fileEntry.getFileEntryTypeId())
#set ($dlFileEntryType = $type.getFileEntryType($fileEntryTypeId))
#set ($ddmStructures = $dlFileEntryType.getDDMStructures())
#set ($ddmStructure = $ddmStructures.get(0))
#set($dlFileEntryMetadata = $metadata2.getFileEntryMetadata($ddmStructure.getStructureId(), $fileEntry.getLatestFileVersion(true).getFileVersionId()))
##set ($storageUtil = $portal.getClass().forName("com.liferay.portlet.dynamicdatamapping.storage.StorageEngineUtil").newInstance())
#set($storageUtil = $serviceLocator.findService("com.liferay.portlet.dynamicdatamapping.storage.StorageEngineUtil"))
#set($dDMStorageId = $dlFileEntryMetadata.getDDMStorageId())
#set($fields = $storageUtil.getFields($dDMStorageId))
<br> fields> $fields
но $storageUtil.getFields($dDMStorageId))
пуст
Как вы получите ваш 'structure' объекта? –