liferay5 0 學習筆記2

2021-08-29 15:04:12 字數 2929 閱讀 1772

學習liferay是個痛苦的過程,整天都在那麼多包和類中徘徊.乙個功能涉及的檔案比較多.

這段時間本想照著上次哪個貼裡面的做乙個運算元據庫的例子,發現很多不會,包括關於spring,hibernate有很多配置都看

不懂,只能一步步來,首先先從struts開始配置,至於資料,只能是自己add進去

1.首先先寫乙個portlet  繼承strutsportlet

public class myportalportlet extends strutsportlet 

}

2.再寫乙個 action繼承portletaction 這裡的action其實就是struts中的action,只是繼承了liferay自己的類

public class myportletaction extends portletaction 

else

}}

3.接著開始配置配置檔案

接著配struts的標籤指向,配置tiles-defs-ext.xml,增加兩個跳轉,繼承portlet,進行跳轉,與上面的struts 的

4.接著配置portlet配置檔案,portlet-ext.xml,增加新類,也就是上面寫的myportalportlet ,給他進行註冊,

lpyportal

hello lpy

com.ext.portlet.myuser.myportalportlet

view-action

/ext/myuser/view_users

0 text/html

com.liferay.portlet.strutsresourcebundle

user

123

power-user

user

這裡的portlet-name的名字給liferay給註冊時需要用到

portlet-class寫的就是上面寫的myportalportlet,連線jsp和action的portlet. 

下面解釋下上面的資訊

view-action

/ext/myuser/view_users

初始引數這裡的value就是上面struts-config-ext.xml裡面的path路徑 

user

123

這裡的引數選擇,設定乙個預設值,傳遞的函式是user,預設值是123,在jsp中我們可以通過prefs.getvalue("user", "")來獲取,其實就是寫在預設跳轉的view.jsp中,給他賦乙個預設的值,具體可以參看下面的view.jsp的寫法

power-user

user

配置該portlet 的角色,以及角色的顯示名字,角色名role-name 是由portlet.xml 中進行定義

該portlet 由com.liferay.portal.apache.bridges.struts.liferaystrutsportleturlimpl 類的例項進行處理,允許使用模版和實時重新整理頁面。可配置administrator,guest,power-user,user 四種角色對其擁有不同的許可權。至於許可權的研究,嘿嘿,慢慢來

5.配置liferay-portlet-ext.xml

lpyportal

ext/myuser

false

false

false

false

1

portlet-name要和portlet-ext.xml裡面寫的portlet的name一樣

6.寫jsp檔案

先寫乙個init.jsp  建立路徑ext-web/docroot/html/portlet/ext/myuser/

<%@ include file="/html/common/init.jsp" %>

<% portletpreferences prefs = renderrequest.getpreferences();%>

**就幾行,include包含的jsp,其實是乙個通用的,如果看下裡面的內容,可以發現裡面的內容基本上把很多常用的類和變 量都包括在裡面了

再寫乙個view.jsp

<%@ include file="/html/portlet/ext/myuser/init.jsp"%>

" />">myuser <%= prefs.getvalue("user", "") %>

這裡的prefs是上面init.jsp中建立的,portal的頁面就是乙個jsp包含乙個jsp,沒有這樣的標籤,因為都是統一的,只有table,或者div或者include,就一直往裡面加內容

寫乙個view_users.jsp

<%@ include file="/html/portlet/ext/myuser/init.jsp" %>

<% list users = (list)request.getattribute("users");%>

<%

for (int i = 0; i < users.size(); i++)

%>

這個jsp上的值是從上面寫的action中獲取來的,可以參看上面myportletaction中的

req.setattribute("users", users);

最後在liferay-dislpay.xml中註冊你寫的portlet

我是把他放在samplet中,這看個人喜好

應該差不多了.

最後用ant編譯下,把他們全部編譯到你安裝的伺服器,

liferay學習筆記三 tagLig渲染

這裡以input field為例。其他的應該也差不多,沒去細了解。liferay裡提供了liferay ui 的taglib,要在jsp頁面裡使用的話,就在前面加上 taglib uri prefix liferay ui 不過大部分時候可以加上 include file html common i...

Liferay 學習筆記 三種開發策略

一 liferay整體框架 由於目前要做enterprise integration,所以在這個架構當中主要說一下enterprise service bus 企業服務匯流排 在liferay portal中使用mule servicemix作為esb 其可以快速的將一些應用和服務增加到整個企業架構...

醫學通識50講學習筆記 2 醫療

現代醫學已經認識到,單純地延長存活時間是遠遠不夠的,維護患者的尊嚴,支援患者的生活意義,提高患者的生命質量,是醫學最重要的使命。真正治好病的是病人自己,所有的醫療行為只是起到支援的作用。如果一種病抑制了細胞的自我修復功能,也就無法 呼吸機是支援肺,讓肺休息,等待自癒。床旁血液淨化是支援腎,讓腎休息,...