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