版權(quán)所有:(xiaodaoxiaodao)藍(lán)小刀
??
xiaodaoxiaodao@gmail.com
http://m.tkk7.com/xiaodaoxiaodao/archive/2007/09/18/146297.html
轉(zhuǎn)載請注明來源/作者
?
?
Alfresco WCM
安裝和使用
?
在上面一篇文章《Alfresco2.1下載和安裝》中,下載和安裝alfresco之后(這里下載的版本為
alfresco-community-tomcat-2.1.0.zip
),默認(rèn)是不帶有WCM的,在我們開發(fā)WCM之前,還必須下載WCM。
?
1
.
下載和安裝WCM(網(wǎng)站內(nèi)容管理系統(tǒng))
①
下載WCM(最新版本為
alfresco-community-wcm-2.1.0.zip
),下載地址為:http://sourceforge.net/project/showfiles.php?group_id=143373
在上篇文章中,alfresco解壓后的截圖如下,
?
可以看到alfresco/tomcat/webapps有一個(gè)alfresco應(yīng)用,我們要發(fā)布WCM,必須把WCM解壓到這里,把下載的WCM解壓到這里解壓到alfresco/tomcat/webapps/alfresco目錄下,
?
②
解壓后可以看到目錄結(jié)構(gòu)如下:
?
把wcm-bootstrap-context.xml剪切到alfresco/tomcat/shared/classes/alfresco/extension目錄下
?
啟動(dòng)alfresco/alf_start.bat,訪問http://localhost:8080/alfresco/即可看到alfresco登錄界面(默認(rèn)管理員登陸 用戶名:admin,密碼:admin),這時(shí)WCM已經(jīng)被加載進(jìn)alfresco之中了。
?
上面所述WCM的安裝過程也可參考
alfresco-community-wcm-2.1.0.zip
包中的README_wcm.txt文件。
?
③
登陸后發(fā)現(xiàn)界面中會(huì)增加兩項(xiàng):
"Company Home"
下增加"Web Projects"
"Company Home""
數(shù)據(jù)字典"下增加"Web Forms"
?
當(dāng)我們使用WCM創(chuàng)建一個(gè)新的站點(diǎn)時(shí),通過創(chuàng)建"Web Projects"來生成一個(gè)web應(yīng)用,使用"Web Forms"來定義一些web模板,使用這些web模板可以創(chuàng)建相應(yīng)的頁面。
?
2
.
學(xué)習(xí)使用WCM。
下面我們嘗試使用WCM,注意WCM內(nèi)容管理實(shí)際上比較重要的兩個(gè)咚咚也就是上面所說的"Web Projects"和"Web Forms"。
①
創(chuàng)建"Web Forms"。
⑴
啟動(dòng)alfresco/alf_start.bat,訪問http://localhost:8080/alfresco/,登陸后進(jìn)入"Company Home"——"數(shù)據(jù)字典"——"Web Forms",在"Create"按鈕上點(diǎn)擊,出現(xiàn)下拉菜單,如下圖:
?
⑵
選擇"Create Web Form",進(jìn)入下一步:
?
⑶
在這里需要我們一個(gè)XML schema文件,點(diǎn)"瀏覽"按鈕,選擇一個(gè)XSD文件(為便于測試,我這里提供了一個(gè)simpletest.xsd文件,下載自行解壓),選擇后如下圖:
?
⑷
選擇后"Next"按鈕由灰色狀態(tài)變?yōu)榭蛇x,點(diǎn)"Next"按鈕,進(jìn)入下一步:
?
⑸
如上圖所示,可以選擇三種模板文件(FreeMarker/XSLT/XSL-FO),這里我們選擇最熟悉的XSL文件(為便于測試,我這里提供了一個(gè)simpletest.xsl文件),選擇后如下圖:
選擇后"Add to List"按鈕由灰色狀態(tài)變?yōu)榭蛇x,點(diǎn)"Add to List"按鈕把XSL文件添加到已選列表中(在這里可以選擇多個(gè)FreeMarker/XSLT/XSL-FO模板文件)
?
⑹
然后點(diǎn)擊"Next"按鈕進(jìn)入下一步:
?
⑺
直接點(diǎn)擊"Next"按鈕進(jìn)入下一步,然后點(diǎn)擊"Finish"按鈕完成"Web Forms"的創(chuàng)建,可以看到"Web Forms"中出現(xiàn)剛才新創(chuàng)建的Web Form,名稱是"simpletest"。
?
?
②
創(chuàng)建"Web Projects"。
⑴
進(jìn)入"Company Home"——"Web Projects",在"Create"按鈕上點(diǎn)擊,出現(xiàn)下拉菜單,如下圖:
?
⑵
選擇"Create Web Project",進(jìn)入下一步:
?
⑶
輸入Name和DNS兩個(gè)必選項(xiàng)(這里項(xiàng)目名稱設(shè)為"projecttest"),然后點(diǎn)"Next"按鈕,進(jìn)入下一步:
?
⑷
點(diǎn)"Add to List"按鈕把剛才創(chuàng)建的web from添加到已選列表中(如果你在上面創(chuàng)建了不止一個(gè)web from,在這里可以選擇多個(gè)web from)
?
⑸
這里看到上面有一個(gè)黃色警告,你可以點(diǎn)擊"Configure Workflow"進(jìn)去匹配相應(yīng)的審批流程:
?
點(diǎn)擊"Search"按鈕,選擇"Administrator",點(diǎn)擊"Add to List"按鈕添加審批人(發(fā)布文件到這個(gè)項(xiàng)目時(shí)的審批人)。
?
點(diǎn)擊"OK"按鈕返回到上一步⑷,黃色警告已經(jīng)消失。
content
操作權(quán)限,也可以直接點(diǎn)擊"Next"按鈕進(jìn)入下一步。
?
⑹
在⑷中點(diǎn)擊"Next"按鈕進(jìn)入下一步:
?
⑺
點(diǎn)擊"Next"按鈕進(jìn)入下一步:
?
點(diǎn)擊"Search"按鈕,選擇"Administrator",選擇"Content Manager",點(diǎn)擊"Add to List"按鈕用戶的content管理角色(角色有Content Manager/Content Publisher/Content Contributor/ Content Reviewer四種)。
?
⑻
點(diǎn)擊"Next"按鈕進(jìn)入下一步:
點(diǎn)擊"Next"按鈕進(jìn)入下一步,然后點(diǎn)擊"Finish"按鈕完成"Web Pojects"的創(chuàng)建,可以看到"Web Pojects"中出現(xiàn)剛才新創(chuàng)建的Web Poject,名稱是"projecttest":
?
③
創(chuàng)建Web Project和Web Forms之后,我們就可以使用WCM了,如何使用,下面進(jìn)行一個(gè)簡單的內(nèi)容創(chuàng)建:
⑴
點(diǎn)擊剛剛創(chuàng)建的projecttest,進(jìn)入:
進(jìn)入之后可以看到有兩個(gè)工程,Staging Sandbox用來正式發(fā)布,My Sandbox(因?yàn)榈顷憰r(shí)用的admin用戶,所以這里的My Sandbox是admin用戶下的,等一下我們通過URL預(yù)覽My Sandbox應(yīng)用的時(shí)候可以清楚的看到這一點(diǎn))是針對每個(gè)用戶的,每個(gè)用戶都擁有一個(gè)自己的My Sandbox工程,只有提交(Submitted)之后才會(huì)進(jìn)入Staging Sandbox,
?
⑵
點(diǎn)擊"Create Content"鏈接進(jìn)入content編輯頁面:
?
⑶
點(diǎn)擊"Next"按鈕進(jìn)入下一步:
?
我們看到有"Title"和"Url"兩個(gè)輸入框,這兩個(gè)輸入框是怎么來的呢,打開我們在2.⑶選擇的simpletest.xsd文件,可以看到這是XSD中定義了兩個(gè)XML元素:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:simpletest="http://www.mycompany.com/lively/simpletest" targetNamespace="http://www.mycompany.com/lively/simpletest" elementFormDefault="qualified">
<xs:element name="simpletest">
??? <xs:complexType>
??????? <xs:sequence>
??????????? <xs:element name="title" type="xs:normalizedString"/>
??????????? <xs:element name="url" type="xs:anyURI"/>??????????????
??????? </xs:sequence>
??? </xs:complexType>
</xs:element>
</xs:schema>
?
OK
,下面在"Title"和"Url"兩個(gè)輸入框分別輸入"Hello World!"和"mailto:xiaodaoxiaodao@gmail.com",這時(shí)可以點(diǎn)擊"Finish"按鈕直接完成content的創(chuàng)建,不過為了保險(xiǎn)起見,我們可以點(diǎn)擊"Next"按鈕進(jìn)入下一步先進(jìn)行預(yù)覽,然后根據(jù)預(yù)覽結(jié)果確定是否"Finish"。
?
⑷
點(diǎn)擊"Next"按鈕
進(jìn)入下一步:
?
點(diǎn)擊Preview圖片進(jìn)行預(yù)覽,我們會(huì)發(fā)現(xiàn)出現(xiàn)無法顯示網(wǎng)頁的問題:
?
?
查看控制臺(tái),發(fā)現(xiàn):
22:14:55,823 WARN? [web.config.ClientConfigElement]
Virtualisation Server not st
arted
- reverting to default IP: 127-0-0-1.ip.alfrescodemo.net
22:14:55,823 WARN? [web.config.ClientConfigElement]
Virtualisation Server not st
arted
- reverting to default port:
8180
?
這是因?yàn)?span lang="EN-US">Preview需要啟動(dòng)一個(gè)virtual-tomcat(虛擬tomcat,名字有點(diǎn)嚇人,其實(shí)也就是另外一個(gè)tomcat,端口是8180),
?
⑸
到alfresco/tomcat/webapps/alfresco/virtual-tomcat/bin下運(yùn)行startup.bat(原先通過alfresco/alf_start.bat啟動(dòng)的tomcat不需要重新啟動(dòng)),啟動(dòng)后再次點(diǎn)擊Preview圖片進(jìn)行預(yù)覽,會(huì)發(fā)現(xiàn)成功出現(xiàn)helloworld頁面:
注1:
如果依然不成功,需要你在C:\WINDOWS\system32\drivers\etc中的hosts文件加入主機(jī)名映射:
127.0.0.1?? preview.admin.projecttest.www--sandbox.127-0-0-1
或者這種模糊匹配寫法
127.0.0.1?? %.www--sandbox.127-0-0-1
?
注2:
我們可以看到這里Preview預(yù)覽的地址是preview.admin.projecttest.www--sandbox.127-0-0-1
格式為:preview.用戶名.project名稱.www--sandbox.主機(jī)地址
?
⑹
點(diǎn)擊"Finish"按鈕完成(也可打上"Submit these 2 files when wizard finishes"的勾[見 ⑷ 中圖]直接在"Finish"的時(shí)候就提交到Staging Sandbox),
?
⑺
點(diǎn)擊"Finish"按鈕之后創(chuàng)建的helloworld.html/helloworld.xml已經(jīng)發(fā)布到My Sandbox上:
?
⑻
如果我們這時(shí)再點(diǎn)擊Preview圖片進(jìn)行預(yù)覽,可以看到這時(shí)預(yù)覽的地址已經(jīng)是發(fā)布地址了:
?
注1:
這里Preview預(yù)覽My Sandbox的地址是
admin.projecttest.www--sandbox.127-0-0-1
格式為:用戶名.project名稱.www--sandbox.主機(jī)地址
?
⑼
打上"Submit these 2 files when wizard finishes"的勾[見 ⑺ 中圖],然后點(diǎn)擊在"Submit Selected",就可以提交到Staging Sandbox):
?
點(diǎn)擊"OK"按鈕,這個(gè)時(shí)候還沒有到提交到Staging Sandbox,還需要審批人[見 ② 創(chuàng)建"Web Projects"的第⑸步]進(jìn)行審批。
?
⑽
"My Alfresco"
中,點(diǎn)擊Manager圖片進(jìn)入
?
進(jìn)入后點(diǎn)擊"Approve"按鈕即可完成提交到Staging Sandbox。
?
提交后Preview預(yù)覽Staging Sandbox的地址是
projecttest.www--sandbox.127-0-0-1
格式為:project名稱.www--sandbox.主機(jī)地址
?
注:
比較三個(gè)地址的不同:
Preview
預(yù)覽的地址是
preview.admin.projecttest.www--sandbox.127-0-0-1
格式為:
preview.
用戶名.project名稱.www--sandbox.主機(jī)地址
?
Preview
預(yù)覽My Sandbox的地址是
admin.projecttest.www--sandbox.127-0-0-1
格式為:
用戶名.project名稱.www--sandbox.主機(jī)地址
?
提交后Preview預(yù)覽Staging Sandbox的地址是
projecttest.www--sandbox.127-0-0-1
格式為:
project
名稱.www--sandbox.主機(jī)地址
?
?
附1:
綜上所述,"Web Forms"實(shí)際上是XSD+XSL的組合,使用這些web模板可以創(chuàng)建相應(yīng)的頁面時(shí),根據(jù)XSD+XSL先提供一個(gè)表單,你在表單上輸入一些數(shù)據(jù)之后即可生成對應(yīng)的XML文件,然后根據(jù)這個(gè)XML生成指定格式的文件(比如jsp/shtml/html等)。
?
本來還想繼續(xù)寫一點(diǎn)使用WSF創(chuàng)建WCM的東西,感覺寫這些咚咚太累了,具體的使用過程就可參考我的前一篇文章
《翻譯:Alfresco WCM Website Framework (WSF)
》
吧。
?
附2:
上面創(chuàng)建web form使用的
XSD+XSL
等模板文件實(shí)際上alfresco WCM自帶有很多例子,分別位于
alfresco\tomcat\webapps\alfresco\extras\wcm\
contentmodels
(XSD)和
alfresco\tomcat\webapps\alfresco\extras\wcm\
templates
(XSL),大家嘗試使用WCM中的例子創(chuàng)建一些webform并添加一些web content,然后看看運(yùn)行結(jié)果,實(shí)際上WCM自帶的很多例子在我們實(shí)際開發(fā)WCM的時(shí)候都會(huì)用到或者以它為基礎(chǔ)改寫里面的一些
XSD+XSL
。
?
?
Alfresco WCM安裝和使用.pdf 下載地址:
Alfresco WCM安裝和使用.part1.rar
Alfresco WCM安裝和使用.part2.rar
Alfresco WCM安裝和使用.part3.rar
?
?
?
版權(quán)所有:(xiaodaoxiaodao)藍(lán)小刀?? xiaodaoxiaodao@gmail.com
?