java - 在 Liferay 6.2 中以编程方式设置选择类型自定义字段

标签 java liferay-6.2

我在 liferay 中创建了一个结构,其中具有与 DLFileEntry 关联的自定义字段。该结构有自定义: - 文本字段 - 整数字段 - 数字字段 - 下拉列表字段

在 liferay 中(以编程方式)上传文档时,我可以以编程方式设置所有这些字段(下拉列表除外)。

因此,假设通过管理控制台创建的下拉列表字段的名称为“select-name-liferay”。此下拉列表有 3 个选项:

  • 键“选项1” -> 值:“选项1”
  • 键“选项2”->值“选项2”
  • 键“选项3”->值“选项3”

    作为我的代码中的输入,我将拥有

值“option2”和liferay自定义字段的名称(“select-name-liferay”)

我这样做:

Map<String, Fields> fieldsMap = new HashMap();


        for (Map.Entry<String, Object> entry : customFields.entrySet()) {
           ....all other custom fields are put in the map

                targetFields.put(new Field("select-name-liferay",  "a string"
           ....
        }
        fieldsMap.put(structure.getStructureKey(), targetFields);

然后我使用 Liferay DL Utils 来保存文件,并将 fieldsMap 传递给它。所有未选择的字段均已正确设置,但我似乎无法设置下拉列表的值。

如何实现这一目标?

最佳答案

尝试将值设置为

targetFields.put(new Field("select-name-liferay",  "[a string]"

关于java - 在 Liferay 6.2 中以编程方式设置选择类型自定义字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42844378/

相关文章:

Java 术语 : Why compile-time error and not compile-time exception?

java - 关于 IntelliJ IDEA。无法将字符串添加到 ArrayList<String>。错误: "Cannot resolve symbol ' add' "

javascript - 如果脚本文件放置在外部,则无法获取 ${findState} 值

javax.net.ssl.SSLException : Connection closed by peer on 4. 4.2 设备(适用于 6.0.1)

java - 如何从实现相同接口(interface)的多个 bundle 中使用正确的 bundle ?

twitter-bootstrap - 在 Liferay 6.2 中使用 Bootstrap 3.3.6

gradle - 不正确的 liferay-plugins 依赖

Liferay - 登录登陆后的中间页面

java - 如何显示选中的复选框? Spring-Jsp

java - 我可以触发 SimpleButtonAction 吗?