最近看到过几次有人在群里面询问Liferay7中怎么引入FastJson,这个问题其实是怎么引入第三方jar包的问题。
第一步:在maven或gradle的文件中引入fastjson,此处的引用和正常的项目一样
maven
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.61</version></dependency>
gradle
...
Liferay 7.1的变化
最近一段时间比较忙,没有怎么关注Liferay,今天一看7.1版本已经正式发布半个月了,大概浏览了一下,结合之前的了解,分享一下看到的7.1的变化。
整体的建议是:目前用7.0的建议升级到7.1,如果不急的建议等GA2或GA3。目前的版本完成度已经非常高,但有些页面还是有待优化空间。
能明显感受到的变化
1. 界面的UI更精细美观,不再像7.0一样看着就像一个仓促赶工的半成品;7.1的界面要大赞一个;整个系统的操...
让Liferay 7支持oracle、db2、sqlServer等商业数据库
Liferay在7.0的社区版本中取消了对于商业数据库的支持,实际上我们可以自己来扩充这个支持,liferay的DAO部分使用的是hibernate,准确的版本号为3.6.10.Final,数据库的生成等也是基于hibernate作的,而不是自己独立的,所以理论上来讲只要是hibernate支持的数据库,liferay 7都可以实际支持。
如果不想看思路的朋友,可以直接下载下面的包了,支持oracle、db2、sql server、Sybase等四种商业数据库。
Life...
liferay中jsonws的认证方法
Liferay默认提供两种接口,基于axis的webserivce,访问地址为:http:/xxx/api/axis
基于jsonws的访问地址为:http://xxx/api/jsonws。
但是这两种接口在外部分访问的时候都是需要认证的,本篇文章介绍如何对jsonws的接口进行认证访问。
基于Java的认证
示意代码如下:
String pathUrl = "http://localhost:8080/api/jsonws/user/get-user-by-id/user-id/20198";
URL url = new URL(pathUrl);
HttpURLConne...
让Liferay的Service Builder连接其他数据库
在Liferay里面使用ServiceBuilder默认情况下连接的数据库是Liferay本身的数据库,在某些场景和需求下,我们可能需要连接另外的数据库或者数据源。ServiceBuilder默认情况下已经提供了相关的支持,需要做下简单的配置。
第一步,在service.xml里面为对应的实体指定对应的数据源等。在entity里面定义data-source、session-factory、tx-manager
在对应的entity里面添加如下配置,
data-source="sampleDataSour...
Liferay表结构介绍(四):Portlet相关表
Portlet的相关表
Portlet表
id_:主键,没有实际意义。
companyId:实例ID。
portletId:portlet的名称,系统portlet的名称,为portlet-custom.xml里面的portlet name,自己定义的为类似这样的结构:demo_WAR_BookManagerportlet,其中_WAR_前面的为portlet.xml里面定义的portlet name,后面的来所在的工程的名称。
roles:不知道用处,一般没有用处,为空。
active_:是否激活的,可以在控制面板--插件配...
如何对liferay中的dockbar进行修改
Liferay中有时候我们需要对dockbar的内容进行修改与调整。
权限的控制参考上一篇博客:
让Liferay中dockbar基于权限显示
dockbar的引入是在主题里面,具体的定义是在主题的templates/portal_normal.vm里面,我们在里面可以看到如下的代码:
#dockbar()
或者
#if ($is_signed_in)
#dockbar()
#end
源码寻找步骤
要进行修改,我们必须要知道这些对应的代码是在什么地方的?
1、基于上面的代码我们...
让Liferay中dockbar基于权限显示
Liferay是上方的那条我们将他称为dockbar,在dockbar上可以操作页面的编辑、portket的添加、站点的跳转、控制面板的入口等。
有些场景下我们可能不想让dockbar显示,或者是想让他基于权限显示。
dockbar的定义是在主题的templates/portal_normal.vm里面,我们在里面可以看到如下的代码:
#dockbar()
或者
#if ($is_signed_in)
#dockbar()
#end
前者是dockbar一直显示,后才表示用户登录后显示,如果没有...
Liferay7.0开发学习(四):MVC Portlet开发详解
本文介绍的是Liferay 7.0开发中的MVC portlet的更详细的介绍,一个基本的MVC Portlet插件的创建与部署请参考下面这一篇博客:
Liferay7.0开发学习(二):创建并部署一个Portlet
此篇博客的内容是基于上面的代码进行的。
我们开发此Portlet时,主要有两部分组成,
1、后台的控制类MvcPortletTestmvcportlet,相当于action,用来处理前端页面的跳转与参数接收。
2、前端相应的JSP代码,用来做前端的界面展...
Liferay表结构介绍(三):站点及页面相关表
Liferay里面的所有的站点信息都是保存在group表里面,包括普通站点、组织机构站点、用户组站点、用户的私人站点,模板站点等。
Group_表 站点表
groupId:站点Id。
companyId:实例Id。
creatorUserId:创建当前站点的用户Id。
classNameId:是哪个实体的站点,比如20003是组织机构,20001是普通站点,20005是用户,对应于classname表里面的相关信息。
classPK:对应实体的主键。
parentGroupId:上级站点...