1

我最近研究了一个使用 Liferay 6.1 的 Android 应用程序。但是,我无法使用 Liferay API 更新自定义字段的值。

我将自定义字段连接到 users_admin portlet user/details.jsp 并使公共视图可访问:

<liferay-ui:custom-attribute
    className="com.liferay.portal.model.User"
    classPK="<%= (selUser != null) ? selUser.getUserId() : 0 %>"
    editable="<%= true %>"
    label="<%= true %>"
    name="Course"
/>

还连接到登录 portlet create_account.jsp:

<div>
        <liferay-ui:custom-attribute
            className="<%= User.class.getName() %>"
            classPK="<%= 0 %>"
            editable="<%= true %>"
            label="<%= true %>"
            name="Course"
        />
</div>

因此,我需要一个自定义 Web 服务来通过 http 客户端访问这些值以发布/获取值。知道从哪里开始寻找吗?我已经尝试了几个 web 服务教程,但没有一个提供访问自定义字段的 expando 值的具体解决方案。

这大致是我所坚持的:

移动应用程序 -> Liferay API -> 更新自定义字段信息

移动应用程序 -> Liferay API -> 检索自定义字段信息

4

1 回答 1

0

正如您已经提到了神奇的单词“Expando”,您已经知道在哪里查看:检查Expando*Service文档注意:Webservices*Service将以*LocalService.

使用 Expandos 感觉有点像使用表的准系统:有 ExpandoTable、ExpandoColumn 和 ExpandoValue。如果您对使用 LocalService 的示例感到满意(抱歉,没有 web 服务),您可能需要检查Liferay 的这个使用 Expando 属性的小扩展PodcastingUtil.getEnclosure(...),特别是在.

代码库应该足够小,以便了解 Expandos 的基本处理,否则让我知道未解决的问题。无需查找,我希望远程接口与我在该项目中使用的本地接口非常相似。

于 2013-07-24T16:37:37.823 回答