11 2016 档案

摘要:Liferay最大的好处是不仅接口强大,利于扩展,就连JSP定制扩展都提供了3种方式。 修改核心jsp代码,有3种修改方式:1、暴力修改直接修改(位于portal-web/docroot/html),编译部署,会带来风险,而且不能同步更新。 2、全量扩展修改热部署jsp文件(替代原有jsp),这是v 阅读全文
posted @ 2016-11-30 11:15 昕友软件开发 阅读(788) 评论(0) 推荐(0) 编辑
摘要:Expando 是liferay的一种自定义表格扩展的方式,从5.0就已存在 , 可以在运行时新建表格\字段\行\值. 这是一种Service Builder之外的轻量级替代扩展方式,不必像Service Builder那么繁琐, 实现的具体技术实际上是列转行,其中ExpandoValue有点像Ac 阅读全文
posted @ 2016-11-29 22:45 昕友软件开发 阅读(626) 评论(0) 推荐(0) 编辑
摘要:在Form提交后的变量,很多情况是要展现在jsp页面中,这时Action到Render的变量传递就非常有用。 例如,您在数据库中添加了学生的详细信息。 为了实现这一需求,先创建Form表单(学生的细节,如姓名、出生日期等,通过action url来实现)。 当用户提交表单时,这些数据(学生信息)会在 阅读全文
posted @ 2016-11-28 00:04 昕友软件开发 阅读(798) 评论(0) 推荐(0) 编辑
摘要:在v6.2开始后,需要设置<requires-namespaced-parameters>false</requires-namespaced-parameters> 来避免在jsp中写<portlet:namespace/>的input前缀 在v7.0发现,注解方式是不灵的! 即 "javax.p 阅读全文
posted @ 2016-11-27 20:17 昕友软件开发 阅读(981) 评论(0) 推荐(0) 编辑
摘要:前言 OSGi是目前动态模块系统的事实上的工业标准,它适用于任何需要模块化、面向服务、面向组件的应用程序。Eclipse如此庞大和复杂的插件体系,就是基于OSGi。Liferay也是基于OSGi。OSGi是模块化设计的一种标准,适用于大中型项目。在一些小型项目中,开发者也可以自己设计私有的class 阅读全文
posted @ 2016-11-18 14:03 昕友软件开发 阅读(1455) 评论(0) 推荐(0) 编辑
摘要:hook开发是Liferay客制扩展的一种方式,比插件灵活,即可以扩展liferay门户,也能对原有特性进行更改,Liferay有许多内置的服务,比如用hook甚至可以覆盖Liferay服务。 可作为系统服务挂钩(Liferay Service Hook),还有其他类型的hook... Lifera 阅读全文
posted @ 2016-11-14 18:36 昕友软件开发 阅读(775) 评论(0) 推荐(0) 编辑
摘要:使用Portlet filters过滤器做切面AOP Portlet Filters定义于JSR286 Java Portlet Specification 2.0 Portlet Filters是为了在4个生命周期的过程中,提供外部的AOP支持,这非常不显眼,但也很有用,比如可以用在Liferay 阅读全文
posted @ 2016-11-14 12:40 昕友软件开发 阅读(815) 评论(0) 推荐(0) 编辑
摘要:Tag是liferay中的Asset特性,可以用来对信息进行分类,在iferay中的Asset类型为: 1、 Web Content(自定义内容) 2、 Documents and Media(文档库和媒体文件) 3、 Blogs (博客文章) 4、 Message Boards 5、 Wiki P 阅读全文
posted @ 2016-11-14 12:35 昕友软件开发 阅读(722) 评论(0) 推荐(0) 编辑
摘要:在liferay7中开发不依赖Service Builder的对外服务类,非常简洁,只需要2点注解: 在类的前部定义: @ApplicationPath("/PathXXX") 方法前定义: @GET @Path("/ActionXXX") @Produces("text/plain") 例子:得到 阅读全文
posted @ 2016-11-14 12:34 昕友软件开发 阅读(1243) 评论(4) 推荐(0) 编辑
摘要:文章介绍了5种方式,4种是比较常用的: Portlet session IPC Public Render Parameters IPC Event Cookies 参考地址: https://web.liferay.com/zh/community/wiki/-/wiki/Main/Portlet 阅读全文
posted @ 2016-11-13 11:59 昕友软件开发 阅读(779) 评论(0) 推荐(0) 编辑
摘要:第一步:修改liferay-hook.xml 如果是liferay7则不需要这一步,只需要注解: 第二步:配置认证属性portal.properties 配置auth.pipeline.post 还将进行密码检查,liferay的内部机制是2级检查,一级是身份认证,二级是密码检查,实际上可以通过SK 阅读全文
posted @ 2016-11-11 17:43 昕友软件开发 阅读(1558) 评论(0) 推荐(0) 编辑
摘要:废话不多说,直接上代码。 验证类Validator 主要是空验证、数字、格式验证 调用的例子: 数组工具类,ArrayUtil 主要的操作是: 源代码实现分析1、去除重复值,如 源代码实现分析2、尾部增加项,比如: 3、JSONArray、Object和Array转换,如: 字符串工具StringU 阅读全文
posted @ 2016-11-11 13:41 昕友软件开发 阅读(660) 评论(0) 推荐(0) 编辑
摘要:与其闭门造车,不如直接开动原装、进口、免费的法拉利。 -- 作者说 不多说废话,直接上代码。 ParamUtil ParamUtil、GetterUtil是Liferay最重要的帮助类 ParamUtil用途:获取PortletRequest的参数值,并作类型转换和判空处理(内部机制是通过Gette 阅读全文
posted @ 2016-11-11 13:29 昕友软件开发 阅读(1046) 评论(0) 推荐(0) 编辑
摘要:抓住核心 。 Liferay文件上传的核心就是使用UploadPortletRequest类 继承关系java.lang.Object extended byjavax.servlet.ServletRequestWrapper extended byjavax.servlet.http.HttpS 阅读全文
posted @ 2016-11-11 13:00 昕友软件开发 阅读(1154) 评论(1) 推荐(0) 编辑
摘要:官网上的教材说实话实在精简不清晰. https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/creating-an-mvc-portlet 版本7的Action机制换了: https://dev.liferay.com/devel 阅读全文
posted @ 2016-11-09 16:28 昕友软件开发 阅读(717) 评论(2) 推荐(0) 编辑
摘要:开发顺序: 实战任务1,开发BPM管理后台(用于在Liferay管理中心管理Activiti模型上传) 一个熟悉Portlet操作的项目,为开发打好基础。 http://www.cnblogs.com/starcrm/p/6184721.html 实战任务2,开发BPM管理后台:流程列表清单Port 阅读全文
posted @ 2016-11-09 16:28 昕友软件开发 阅读(915) 评论(0) 推荐(0) 编辑
摘要:首先有几个概念需要明确。1、第一个概念是这里的应用程序配置不是写XML之类的配置文件,是类似字典的类型化配置这意味着应用程序配置不只是一个字符串键值对的列表。值还可以有类型,如整数列表,字符串列表,一个网址,甚至可以使用自己的自定义类型。 2、第二个概念是模块性。在Liferay 7 中,应用程序是 阅读全文
posted @ 2016-11-09 16:07 昕友软件开发 阅读(739) 评论(0) 推荐(0) 编辑
摘要:整理中...... Resources, Roles, and PermissionsPortal Access Control List (PACL) Custom SSO Providers Authentication Pipelines Sanitizers Service Access P 阅读全文
posted @ 2016-11-09 16:05 昕友软件开发 阅读(284) 评论(0) 推荐(0) 编辑
摘要:Liferay内置的工作流是企业版的功能,虽然简单粗糙,但依然不支持社区版。既然要用更强大的Activiti来替代它,那就非常有必要学习一下内置工作流的一些思想,以便借鉴。 它的特点: 实体的工作流操作可以通过service layer进行集成; 需要添加4个额外的字段来跟踪流程状态; 通过Serv 阅读全文
posted @ 2016-11-09 16:04 昕友软件开发 阅读(827) 评论(1) 推荐(0) 编辑
摘要:Model Listeners实现ModelListener接口,用于持久化时的AOP处理 一些使用场景: Audit Listener: 在一个独立而分离的数据库,做信息更新的审计; Cache Clearing Listener: 缓存清除时做的额外定制处理; Validation Listen 阅读全文
posted @ 2016-11-09 16:01 昕友软件开发 阅读(609) 评论(0) 推荐(0) 编辑
摘要:Liferay Message Bus提供了松耦合的消息发送接收机制(生产和消费的设计模式),用于本地服务,不支持远程服务,支持集群。 主要用途: 两个或多个插件之间的通讯。 在事件中发送搜索索引,比如传递工作流的实例索引。 发送订阅邮件或系统消息,比如在工作流中的待办到达时,给用户发送提醒消息。 阅读全文
posted @ 2016-11-09 15:23 昕友软件开发 阅读(2224) 评论(0) 推荐(0) 编辑
摘要:Asset框架用于将您开发的门户内容添加Liferay的核心系统功能。打个比方,你开发了一个事件TodoList管理的插件,在列表显示的时候,你可以集成Asset框架,让你的自定义内容支持Tag标签、分类、评论、星标等功能。它可以关联任意的门户内容,文本、Int、Image、documents、bl 阅读全文
posted @ 2016-11-09 12:44 昕友软件开发 阅读(953) 评论(0) 推荐(0) 编辑
摘要:Service Builder是Liferay为业务开发而设计的模型驱动(model-driven)平台工具,提供一系列的实体类、数据持久化、服务相关的代码自动生成服务。支持Hibernate and Spring集成,缓存处理,动态查询等特性。令人惊讶的是,Liferay所有的持久化代码、Serv 阅读全文
posted @ 2016-11-08 15:53 昕友软件开发 阅读(702) 评论(0) 推荐(0) 编辑
摘要:== 阅读全文
posted @ 2016-11-08 15:51 昕友软件开发 阅读(457) 评论(0) 推荐(0) 编辑
摘要:Portlet 生命周期 init() =〉 render() =〉 processAction() =〉 processEvent() =〉 serveResource() =〉destroy() init() 在Liferay容器部署portlet时,启动portlet实例化 init有两个写法 阅读全文
posted @ 2016-11-04 12:10 昕友软件开发 阅读(1421) 评论(0) 推荐(0) 编辑
摘要:用户 、 站点 、 组织架构 、 角色 、 用户组分别是:Users、 Site、 Organization、 Role、 UserGroups Users 用户是Liferay portal中的关键实体,分别和站点 / 组织架构 / 用户组相互关联; 用户是组织架构的一部分; 一个用户可以通过访问 阅读全文
posted @ 2016-11-02 14:52 昕友软件开发 阅读(1439) 评论(0) 推荐(0) 编辑
摘要:Liferay SDK 开发体系 主要分6种: Portlet Hook Theme Layout Templates Web Modules Ext Portlet :类似于servlet的web组件,编译后是war包,是页面的组成元素,可以把它理解为一个web APP 详细介绍:https:// 阅读全文
posted @ 2016-11-02 12:22 昕友软件开发 阅读(1632) 评论(1) 推荐(1) 编辑
摘要:正在编写 阅读全文
posted @ 2016-11-02 10:41 昕友软件开发 阅读(318) 评论(0) 推荐(0) 编辑
摘要:正在编写 阅读全文
posted @ 2016-11-02 10:38 昕友软件开发 阅读(330) 评论(0) 推荐(0) 编辑

欢迎访问我的开源项目:xyIM企业即时通讯