在现在的Web开发中,Ajax的使用非常频繁,合理的使用Ajax也是提高用户体验的一个重要手段,在Liferay中使用Ajax其实非常方便,但是和普通的web程序稍有差异。
一、简单示例
客户端代码编写
1、在Liferay中创建一个简单的Portlet页面,可以取名为ajaxPortlet,具体的创建过程可以参考;http://www.huqiwen.com/2012/09/03/liferay-6-1-development-study-3-portlet-explicate/
2、在liferay中ajax的请求地址...
Liferay屏幕名称的验证条件
以Liferay 6.1.1 CE版为说明。默认验证条件如下,并按照下列顺序验证
1、不能包含等于cyrus、postfix,并且不能包含_、/两个符合。代码类DefaultScreenNameValidator中的限制。此限制可以通过使用hook工程来写一个NameValidator类进行限制某些特殊字符,如果对DefaultScreenNameValidator里面的定义的条件都不需要,并且没有其他特殊字符需要过虑,可以简单的修改portal.properties属性。
默认如下:
users...
Liferay 6.1开发学习(九):Hook开发简介
一、Hook是什么
hook是什么在http://www.huqiwen.com/2012/09/01/liferay-6-1-development-study-2-create-portlet-project/里面有一个大概的介绍。Liferay提供hook的目的是减少二次开发的代码与liferay核心工程的耦合,通过hook我们主要可以主要做以下六件事情:
1、覆盖事件处理程序:如程序启动事件(application.startup.events)、登录注销事件(login.events.pre、login.events.post)、session的创...
Liferay 6.1开发学习(八):主题开发
Liferay可以为不同的页面、社区、组织等提供不同的主题。方便实现用户的个性化配置,同时Liferay提供的IDE方便开发人员进行主题的个性化开发。
Liferay主题的创建
1、在Eclipse的工具条上,点击New Liferay Project,在plugin type里面选择Theme,点击finish。则完成了theme工程的建立。
2、Liferay的主题开发是在他提供的一个模板的基础上进行修改。我们将个性化的内容放置于_diffs目录下面,在deploy的时...
Liferay 6.1开发学习(七):Layout布局模板开发
Liferay提供了layout功能,可以方便的自由布局,用户或者管理员可以根据选用的布局模板对页面进行自由布局。Liferay默认中提供了几种常用的layout模板,如单栏目、双栏目(20%/80%,30%/70%)等几种常用的,但是这些布局模板并不能满足我们实际的需求,一些复杂的布局需要自己开发。
LayoutTPL开发
布局模板是一个tpl文件,本身结构非常简单。基于Liferay IDE可以进行可视化的、拖动的形式进行布局TPL的开...
Liferay 6.1开发学习(六):国际化
Liferay的开发不建议直接在代码中使用中文等内容,建议使用国际化的方式,从资源文件中读取语言等信息,Liferay在平台对封装了许多操作资源文件的类,我们只需要按照此规则既可方便的实现国际化。
一、Portlet属性的国际化
在前面创建的Portlet的时候,portlet的名称等都是英文的,在添加portlet的时候,显示的也是英文的,如何将这些信息显示成中文呢?如将下面Study显示成中文。
1、检查portelt.xml的X...
Liferay 6.1开发学习(五):编译调试修改源码
Liferay是一个开源的项目,开源项目的好处有两个,一方面我们可以通过阅读源码提高水平,了解一些技术的实现原理,另一方面是如果开源的产品不能满足我们的实际需求,可以通过修改源码实现。Liferay CE版可以免费获取源码,EE版需要购买过产品才能获取源码。
(以下文件虽然是基于Liferay 6.1.1所写,但Liferay 6.2.0版本同样适用,方法、过程、需要注意事项等均一致)
一、导入源码
源码可以从Liferay的官...
Liferay 6.1开发学习(四):Service Builder
一、什么是Service Builder?
Service Builder是Liferay IDE(SDK)提供的一种代码生成方案,开发人员只需要编辑一个数据库的实体描述文件,即可根据本XML文件生成Spring层代码、Hibernate层代码、SQL、SQL索引创建文件、Spring和hibernate的配置文件等,可以大提高开发人员的效率。简单说就是根据数据库描述文件,生成service层和持久化层的代码,开发人员只需要关注控制层即可。
二、Service Builder的使用
...
Liferay 6.1开发学习(三):Portlet简述
在上一篇文章里面介绍的那个Portlet是在创建工程时默认创建的Portlet页面,可以对Portlet有一个大概的认识,但是很难全面。本篇文章对于Liferay中基于MVC的Portlet创建做一个相对详细的描述。
一、Portlet是什么?
Portlet是基于java的web组件,由portlet容器管理,并由容器处理请求,生产动态内容。Portals使用portlets作为可插拔用户接口组件,提供信息系统的表示层。作为利用servlets进行web应用编程的...
Liferay 6.1开发学习(二):创建一个Portlet工程
使用Liferay的SDK创建一个简单的Portlet,此Portlet不包括业务逻辑、不包括数据库,只有简单的页面展现,用以说明Portlet的开发过程。
一、创建Portlet工程
1、打开Liferay IDE,File-->New-->Liferay Project
2、为Portlet工程取名为Study,点击完成。或者点击下一步,默认选择Liferay MVC。
补充说明:
Portlet:这个是一般做Liferay开发选择的项目,一般说Liferay插件工程,通常都是指的Portlet...