1

我的 Liferay 实体Person有一个<column name="mother" type="long" />指向另一个实例的主键的Person. 这长在我创建的SearchContainer表中显示为一个数字:

    <liferay-ui:search-container-column-text
        name="category"
        property="category"
    />

现在,我不想显示为长,而是显示此人的姓名。所以我写道:

    <%
        String motherName =
            PersonLocalServiceUtil.getPerson( person.getMother() )
                .getName();
        }
    %>

    <liferay-ui:search-container-column-text
        name="mother"
        value="<%= motherName %>"
        property="mother"
    />

问题:此列中显示的值仍然是long数字,而不是名称。即使在重建和重新启动之后。

我究竟做错了什么?

4

1 回答 1

1

检查执行情况SearchContainerColumnTextTag

public int doEndTag() {
    ...
    if (Validator.isNotNull(_property)) {
        _value = ...
    }

如您所见,您不能同时设置propertyvalue。只需设置value,您就可以了。

于 2016-01-26T13:43:17.560 回答