下载地址: http://activiti.org/download.html 源码: https://github.com/Activiti/Activiti 环境准备(检查项): JDK 1.7 + JAVA_HOME :java -version 下载 Eclipse Indigo + 拷贝activiti-explorer.war 到 Tomcat/webapps目录 运行Tomcat/bin目录startup.bat or startup.sh 不修改Tomcat http端口情况下访…
hook开发是Liferay客制扩展的一种方式,比插件灵活,即可以扩展liferay门户,也能对原有特性进行更改,Liferay有许多内置的服务,比如用hook甚至可以覆盖Liferay服务. 可作为系统服务挂钩(Liferay Service Hook),还有其他类型的hook... Liferay6.2 时的hook开发比较有限,而在Liferay7则大为不同,OSGi services的彻底改进至Liferay的底层模型框架,使得Liferay可以支持更多的定制扩展!OSGi plugin…
Liferay SDK 开发体系 主要分6种: Portlet Hook Theme Layout Templates Web Modules Ext Portlet :类似于servlet的web组件,编译后是war包,是页面的组成元素,可以把它理解为一个web APP 详细介绍:https://web.liferay.com/zh/products/what-is-a-portal/web-platform Hook:钩子插件,用来覆盖门户的JSP文件和配置文件,适用于仅需要少量(jsp)代…
liferay sdk下载 \IDE下载 \ Tomcat 安装细节不在此赘述 网上有很多. 只讲核心关键坑点 进入2016年,从Liferay6.2.5 ga6版本开始,到7.0 ga3,在ivy环节对国内用户会造成很大困扰,一直卡住,无法使用IDE新建liferay portlet工程. 看遍国内的论坛和博客,没有什么帮助. 看到这里很有帮助: https://web.liferay.com/zh/community/forums/-/message_boards/message/74382…
在liferay7中开发不依赖Service Builder的对外服务类,非常简洁,只需要2点注解: 在类的前部定义: @ApplicationPath("/PathXXX") 方法前定义: @GET @Path("/ActionXXX") @Produces("text/plain") 例子:得到注册用户 import com.liferay.portal.kernel.model.User; import com.liferay.portal…
Model Listeners实现ModelListener接口,用于持久化时的AOP处理 一些使用场景: Audit Listener: 在一个独立而分离的数据库,做信息更新的审计: Cache Clearing Listener: 缓存清除时做的额外定制处理: Validation Listener: 实体的验证 Entity Update Listener: 实体的更新处理 在一个实体模型上可以有多个侦听器,并且无法控制他们运行的顺序. Liferay7中你只需要处理2件事情,比6.2要简…
首先有几个概念需要明确.1.第一个概念是这里的应用程序配置不是写XML之类的配置文件,是类似字典的类型化配置这意味着应用程序配置不只是一个字符串键值对的列表.值还可以有类型,如整数列表,字符串列表,一个网址,甚至可以使用自己的自定义类型. 2.第二个概念是模块性.在Liferay 7 中,应用程序是模块化的,组件只是一个有@组件注释的类,通常是一组属性提供元数据. 3.第三个概念是在不同的范围内具有相同的应用程序的能力有不同的配置.如果您的应用程序需要在不同的范围支持不同的配置,应用程序作用范围…
整理中...... Resources, Roles, and PermissionsPortal Access Control List (PACL) Custom SSO Providers Authentication Pipelines Sanitizers Service Access Policies Authentication Verifiers Custom LDAP Synchronization…
Portlet 生命周期 init() =〉 render() =〉 processAction() =〉 processEvent() =〉 serveResource() =〉destroy() init() 在Liferay容器部署portlet时,启动portlet实例化 init有两个写法: public void init() throws PortletException public void init(PortletConfig config) throws PortletEx…
开发目的: 实现通用流程自动化处理(即实现不需要hardcode代码的bpm统一处理后台,仅需要写少量前端html form代码和拖拽设计BPM定义) 既可独立运行或可依托于Liferay或依托其它门户系统(使用portlet规范技术实现)运行: 先实现一个JSP + Servlet版的通用流程处理,将来迁移到Portlet 迁移工作将保留大量的前后端代码,仅需要改动少量的注解. 考虑到Liferay的客户端体系是bootstrap+jQuery(对移动端的支持非常好),JSP的实现也用了这两者…