Liferay 学习笔记——三种开发策略

关于Liferay环境的配置,可以参考博客园中其他的文章,这里不再详细叙述。现在要在Liferay的基础上进行二次开发,正在学习中,为了在学习过程中留下足迹,现在通过此形式记录自己的学习笔记。

一、Liferay整体框架

Liferay 学习笔记——三种开发策略

由于目前要做Enterprise Integration,所以在这个架构当中主要说一下Enterprise Service Bus(企业服务总线),在Liferay Portal中使用Mule/ServiceMix作为ESB;其可以快速的将一些应用和服务增加到整个企业架构当中;当某些应用需要被替换的时候,在ESB中的某一些可以容易的断开连接。(此处尚未实践,暂时记录一下)

二、Portal开发策略

1. Plugins SDK enviroment

   Plugins SDK是Liferay中,一种最为简单的插件开发,包括themes, layout templates, portlets, hooks和webs应用。对于 Plugins SDK来说,其支持热部署:即针对所开发的themes, layout templates等首先进行编译;然后,使用Ant将其生成WAR文件包同时拷贝到对应的部署的路径中;最后,Portal和Tomcat将检测自动热部署对应路径的文件,将新生成的WAR进行部署。

Liferay 学习笔记——三种开发策略

  Plugins SDK开发的portlet,针对portal properties、language properties却无法进行修改。但是,如果针对上述属性进行修改的话,需要使用Liferay提供的HOOKS portlet.

2. Extension enviroment

  Extension enviroment提供针对Liferay portal的定制。Extension就是扩展的意思,我们可以针对Liferay已经有的Portlet进行“覆盖”,这种特性保证我们所写的“覆盖代码”与Liferay Portal代码是相对分离的,即不用修改Portal原有的代码。

  

Liferay 学习笔记——三种开发策略

  在整个部署期间,客户代码在Ext中将会和源码“融合”到一起,在定制的portal(Customized Liferay Portal)中两种代码会现在Ext中先行被“构建”,最终进行部署。在此过程中,我们会使用到ServicesBuilder(使用XML描述的代码生成器),由于portlet是在Ext开发,其不支持热部署(Hot-Deploy).

  Extension enviroment一般用来管理configuration files, custom source code, custom JSP files,在Ext中,针对Liferay的Portal APIs,标签,JSP文件等所有的东西均可以使用和访问,不想Plugin SDK有相对应得限制。

3. Liferay portal source code

  此种水平不到,暂不考虑。

 

 

转载于:https://www.cnblogs.com/zhiliang/archive/2012/11/20/2779166.html