目前分類:Liferay (29)
- Aug 10 Sat 2019 02:35
Liferay Staging客製化Portlet的同步功能做法
- Aug 10 Sat 2019 02:33
Liferay多國語言的input及editor、Service builder及Configuration使用方式
- Jan 06 Wed 2016 01:35
Liferay Notification Handler 訊息通知實作
Liferay的Notification通知是一個很好用的功能,不但在我們自行開發Portlet時可以引用,配合Json Web Service API還可以達到與其他系統串接的功能,以下紀錄;
一、 實作UserNotificationEventHandler - 自行開發Portlet時可直接使用
1. 首先創一個Portlet project,在這裡我們可取名為Notification-Demo-portlet
- Oct 15 Thu 2015 19:09
Liferay與資料庫存取(2) - 使用Custom-Sql
在Liferay中進行自定義Sql查詢的方式,除了上一篇的直接使用finderImpl並且定義Sql字串以外,我們還可以使用custom-sql。
使用custom的好處在於我們可以將查詢字串寫在一個xml中,查詢時將關鍵字帶入,其功能就跟finder一樣。
以liferay的user資料表來說,如果我今天想要用userId跟screenName來查詢,大致如下;
- Oct 08 Thu 2015 15:46
Liferay Dynamic Query多張表的子查詢
開發Liferay時,除了custom-sql可以為我們達成join多張表的查詢之外,其實也可以依照需求利用dynamic query的子查詢查到所需資料,
以下我主要查詢的table為AssetsEntry,配合與其有關連的JournalArticleResource及JournalArticle兩張表做子查詢;
使用以上的作法便可再只需要子查詢時,不需要透過join的方式就可達到需求,若要使用join方式則還是需使用custom-sql較為清楚。
http://www.liferay.com/zh/community/forums/-/message_boards/message/1817322 http://www.liferay.com/zh/community/forums/-/message_boards/message/6729269
- Feb 02 Mon 2015 03:15
Liferay 6.2 的 JSON Web Service API(2)
接續上一篇,這次來實際應用web service API;
首先定義我們的service builder,並且在<entity>的標籤內將remote-service的屬性設定為true,
這樣service builder便會幫我們產生xxxxServiceImpl的系列class,作為web service使用。
接著到xxxxServiceImpl增加我們所需要使用的方法,以前陣子製作的汽車資料範例程式來說;
- Jan 22 Thu 2015 01:22
Liferay與資料庫存取(1) - 使用FinderImpl
在Liferay中想要下自定義的SQL指令有兩種方式,一種是使用FinderImpl,另一種則是定義custom SQL XML檔。
若只需要存取一張table,則使用FinderImpl較為簡便;
首先在service builder為我們產生的xxx.service.persistence中創建一個class,命名為xxxFinderImpl,
- Sep 25 Thu 2014 15:50
Liferay movebox搭配Javascript傳值
Liferay提供了好用的<liferay-ui:input-move-boxes>移動選單元件如下;
主要功能就是可以塞值至左方或右方選單,並且將其中一邊選單的值保存下來。
基本設定如下;
List<KeyValuePair> rightlist = new ArrayList<KeyValuePair>();
- Aug 25 Mon 2014 15:31
Liferay Portal 新架設時的server相關設定
- Aug 08 Fri 2014 02:19
CentOS 6.0 系統設定Liferay Portal 6.2.1 GA2
最近的專案需求,需要在CentOS 6 的環境下安裝Liferay Portal 6.2.1 GA2,搭配Jre 1.6.0_45版本、
資料庫則使用PostgreSQL。
首先架設環境,在這裡是先設定一個VM環境,安裝CentOS 6.0。
現在linux系列的作業系統都已有了視覺化介面,非常方便;
- May 13 Tue 2014 15:05
Liferay6.2須注意事項(持續增加)
- Apr 29 Tue 2014 18:46
Liferay配合custom field將參數傳至theme portlet的用法
今天必須在Liferay 控制台新增一個客製欄位,讓theme去抓取其中的值並以跑馬燈顯示;
首先必須要到控制台的custom fields裡,site的分類底下去新增所需要的客製欄位;
- Apr 29 Tue 2014 11:10
Liferay 6.2 的 JSON Web Service API(1)
在5.X板就已經有了這個好用的功能,在Liferay service.xml裡定義的remote-service,幾乎都會被轉為JSON提供使用。
在5.X版以後的使用法如下;
可以使用普通的html標籤來引用service.js;
<script src="/html/js/liferay/service.js" language="JavaScript"> </script>
or for the extension environment:
- Mar 13 Thu 2014 14:16
Liferay跨站連線生成URL
一般來說要獲取當前的網址會使用themeDisplay.getCurrentURL()之類的方法,但有時候會需要跨站連結,
如果有groupId 也就是SiteId的資訊的話,可以用以下這個方法;
Group group1 = GroupLocalServiceUtil.getGroup(socialActivity.getGroupId());
- Mar 05 Wed 2014 10:24
遇到is quoted with " which must be escaped when used within the value解決方式
當遇到is quoted with " which must be escaped when used within the value時,
通常是因為在tag裡面用了雙引號,如<c:when test="<%=tabs1.equals("分類1") %>">
這時便會無法辨識,所以要在前後加上雙引號;
<c:when test="<%=tabs1.equals(\"分類1\") %>">
- Feb 17 Mon 2014 13:07
Liferay多重資料庫連線
Liferay 有多重資料庫的連線功能,可以同時存取不同資料庫的資料表,以下說明;
1.建立portal-ext.properties (\tomcat-7.0.27\webapps\ROOT\WEB-INF\classes)
在portal-ext.properties內加入以下內容;
- Feb 13 Thu 2014 13:10
新portlet設定(持續補完)
2/13
創建一個新的portlet時,請打開Liferay-plugin-packages.properties,
portal dependency jars請加入jstl-api跟impl,以後有需要增加的都從這裡添加。
Tlds請加入aui.tld,c.tld,同上
要建立service.xml請在專案上按右鍵-->New-->Liferay Service Builder,輸入相關資訊就可以。
- Feb 10 Mon 2014 11:48
使用web content配合template製作可自定義訊息的跑馬燈效果
Liferay 的 web content有template這個功能可以幫助我們輕鬆得到可以自訂訊息的網頁物件,
例如跑馬燈的訊息乃至圖片輪播的圖片都可以進行自定義,在快速開發簡易功能時很好用,不需自行編寫與資料庫連結的code。
現在來製作一個可以定義多重訊息的跑馬燈,首先開啟web content的Structure
在<root>加入以下;
<dynamic-element name="marqueeText" type="selection_break" index-type="" repeatable="true">
- Jan 28 Tue 2014 10:32
Java結合匯入Excel檔案資料的功能
在Liferay中匯入Excel基本上跟在Java之中作法一樣;
首先在對應的Jsp頁內一定要有上傳excel檔案的選擇框,接下來就是後端的工作;
if ("xls".equals(mimeType) || "xlsx".equals(mimeType)) {
- Jan 07 Tue 2014 02:13
liferay結合多重上傳檔案,checkbox刪除多個檔案以及調整check介面的方法