我开始使用 Liferay Portal,我有两个基本需求,我想用 Liferay 来实现。
- 是否可以通过 API 级别向 CMS 添加内容?我想“从代码”插入一些数据。
- 更重要。如何实现这样的情况,即对于每个创建的用户,都会生成自己的主页,其中包含一些预定义的模板元素?
到目前为止,我已经尝试用谷歌搜索一些东西,但没有发现它有帮助。也许一些关键字?
在分析了有关服务和 ServiceBuilder 的文档后,我意识到这不是我想要的。
让我展示一个基于 Websphere 的例子。 在 Websphere 中,我们有一堆 EJB 组件可用于执行某些操作,与门户交换信息,易于使用。 Liferay 有没有类似的不涉及web 服务的机制?
最佳答案
对于此类问题,我的建议是查看 sevencogs-hook 源代码。这个钩子(Hook)的结构基本上只是一个运行一次的长脚本,设置一个包含用户、站点、页面、内容等的完整演示站点。代码运行一次(在第一次部署之后),然后再也不会运行。没有(明显的)条件,没有需要理解的上下文等。
基本上,您可以逐步完成所有内容,并且 - 在该过程中 - 了解内容(以及页面、图像、博客文章等)是如何在 Liferay 的页面上创建和定位的。
此 Hook 访问 Java API,一个非常相似的 API 可通过 Web 服务获得。基本上所有 Liferay 的 portlet 也使用相同的 API 来开展业务。
编辑:保持此答案有值(value)/最新的附加信息:Sevencogs 已停产,但在旧版本(源代码和二进制文件)中仍然可用。 API 略有变化,因此编译/运行它需要一些工作。 James Falkner has blogged关于剩余部分和经验教训 - 这些片段是从 sevencogs 中提取的,并包含与 API 一起使用的相关代码片段。
关于java - 通过 API 向 Liferay 添加内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7468161/