版权所有:(xiaodaoxiaodao)蓝小刀
xiaodaoxiaodao@gmail.com
http://www.blogjava.net/xiaodaoxiaodao/archive/2007/09/18/146297.html
转载请注明来源/作者
Alfresco WCM
安装和使用
在上面一篇文章《Alfresco2.1下载和安装》中,下载和安装alfresco之后(这里下载的版本为
alfresco-community-tomcat-2.1.0.zip
),默认是不带有WCM的,在我们开发WCM之前,还必须下载WCM。
1
.
下载和安装WCM(网站内容管理系统)
①
下载WCM(最新版本为
alfresco-community-wcm-2.1.0.zip
),下载地址为:http://sourceforge.net/project/showfiles.php?group_id=143373
在上篇文章中,alfresco解压后的截图如下,
可以看到alfresco/tomcat/webapps有一个alfresco应用,我们要发布WCM,必须把WCM解压到这里,把下载的WCM解压到这里解压到alfresco/tomcat/webapps/alfresco目录下,
②
解压后可以看到目录结构如下:
把wcm-bootstrap-context.xml剪切到alfresco/tomcat/shared/classes/alfresco/extension目录下
启动alfresco/alf_start.bat,访问http://localhost:8080/alfresco/即可看到alfresco登录界面(默认管理员登陆 用户名:admin,密码:admin),这时WCM已经被加载进alfresco之中了。
上面所述WCM的安装过程也可参考
alfresco-community-wcm-2.1.0.zip
包中的README_wcm.txt文件。
③
登陆后发现界面中会增加两项:
"Company Home"
下增加"Web Projects"
"Company Home""
数据字典"下增加"Web Forms"
当我们使用WCM创建一个新的站点时,通过创建"Web Projects"来生成一个web应用,使用"Web Forms"来定义一些web模板,使用这些web模板可以创建相应的页面。
2
.
学习使用WCM。
下面我们尝试使用WCM,注意WCM内容管理实际上比较重要的两个咚咚也就是上面所说的"Web Projects"和"Web Forms"。
①
创建"Web Forms"。
⑴
启动alfresco/alf_start.bat,访问http://localhost:8080/alfresco/,登陆后进入"Company Home"——"数据字典"——"Web Forms",在"Create"按钮上点击,出现下拉菜单,如下图:
⑵
选择"Create Web Form",进入下一步:
⑶
在这里需要我们一个XML schema文件,点"浏览"按钮,选择一个XSD文件(为便于测试,我这里提供了一个simpletest.xsd文件,下载自行解压),选择后如下图:
⑷
选择后"Next"按钮由灰色状态变为可选,点"Next"按钮,进入下一步:
⑸
如上图所示,可以选择三种模板文件(FreeMarker/XSLT/XSL-FO),这里我们选择最熟悉的XSL文件(为便于测试,我这里提供了一个simpletest.xsl文件),选择后如下图:
选择后"Add to List"按钮由灰色状态变为可选,点"Add to List"按钮把XSL文件添加到已选列表中(在这里可以选择多个FreeMarker/XSLT/XSL-FO模板文件)
⑹
然后点击"Next"按钮进入下一步:
⑺
直接点击"Next"按钮进入下一步,然后点击"Finish"按钮完成"Web Forms"的创建,可以看到"Web Forms"中出现刚才新创建的Web Form,名称是"simpletest"。
②
创建"Web Projects"。
⑴
进入"Company Home"——"Web Projects",在"Create"按钮上点击,出现下拉菜单,如下图:
⑵
选择"Create Web Project",进入下一步:
⑶
输入Name和DNS两个必选项(这里项目名称设为"projecttest"),然后点"Next"按钮,进入下一步:
⑷
点"Add to List"按钮把刚才创建的web from添加到已选列表中(如果你在上面创建了不止一个web from,在这里可以选择多个web from)
⑸
这里看到上面有一个黄色警告,你可以点击"Configure Workflow"进去匹配相应的审批流程:
点击"Search"按钮,选择"Administrator",点击"Add to List"按钮添加审批人(发布文件到这个项目时的审批人)。
点击"OK"按钮返回到上一步⑷,黄色警告已经消失。
content
操作权限,也可以直接点击"Next"按钮进入下一步。
⑹
在⑷中点击"Next"按钮进入下一步:
⑺
点击"Next"按钮进入下一步:
点击"Search"按钮,选择"Administrator",选择"Content Manager",点击"Add to List"按钮用户的content管理角色(角色有Content Manager/Content Publisher/Content Contributor/ Content Reviewer四种)。
⑻
点击"Next"按钮进入下一步:
点击"Next"按钮进入下一步,然后点击"Finish"按钮完成"Web Pojects"的创建,可以看到"Web Pojects"中出现刚才新创建的Web Poject,名称是"projecttest":
③
创建Web Project和Web Forms之后,我们就可以使用WCM了,如何使用,下面进行一个简单的内容创建:
⑴
点击刚刚创建的projecttest,进入:
进入之后可以看到有两个工程,Staging Sandbox用来正式发布,My Sandbox(因为登陆时用的admin用户,所以这里的My Sandbox是admin用户下的,等一下我们通过URL预览My Sandbox应用的时候可以清楚的看到这一点)是针对每个用户的,每个用户都拥有一个自己的My Sandbox工程,只有提交(Submitted)之后才会进入Staging Sandbox,
⑵
点击"Create Content"链接进入content编辑页面:
⑶
点击"Next"按钮进入下一步:
我们看到有"Title"和"Url"两个输入框,这两个输入框是怎么来的呢,打开我们在2.⑶选择的simpletest.xsd文件,可以看到这是XSD中定义了两个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"两个输入框分别输入"Hello World!"和"mailto:xiaodaoxiaodao@gmail.com",这时可以点击"Finish"按钮直接完成content的创建,不过为了保险起见,我们可以点击"Next"按钮进入下一步先进行预览,然后根据预览结果确定是否"Finish"。
⑷
点击"Next"按钮
进入下一步:
点击Preview图片进行预览,我们会发现出现无法显示网页的问题:
查看控制台,发现:
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
这是因为Preview需要启动一个virtual-tomcat(虚拟tomcat,名字有点吓人,其实也就是另外一个tomcat,端口是8180),
⑸
到alfresco/tomcat/webapps/alfresco/virtual-tomcat/bin下运行startup.bat(原先通过alfresco/alf_start.bat启动的tomcat不需要重新启动),启动后再次点击Preview图片进行预览,会发现成功出现helloworld页面:
注1:
如果依然不成功,需要你在C:\WINDOWS\system32\drivers\etc中的hosts文件加入主机名映射:
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预览的地址是preview.admin.projecttest.www--sandbox.127-0-0-1
格式为:preview.用户名.project名称.www--sandbox.主机地址
⑹
点击"Finish"按钮完成(也可打上"Submit these 2 files when wizard finishes"的勾[见 ⑷ 中图]直接在"Finish"的时候就提交到Staging Sandbox),
⑺
点击"Finish"按钮之后创建的helloworld.html/helloworld.xml已经发布到My Sandbox上:
⑻
如果我们这时再点击Preview图片进行预览,可以看到这时预览的地址已经是发布地址了:
注1:
这里Preview预览My Sandbox的地址是
admin.projecttest.www--sandbox.127-0-0-1
格式为:用户名.project名称.www--sandbox.主机地址
⑼
打上"Submit these 2 files when wizard finishes"的勾[见 ⑺ 中图],然后点击在"Submit Selected",就可以提交到Staging Sandbox):
点击"OK"按钮,这个时候还没有到提交到Staging Sandbox,还需要审批人[见 ② 创建"Web Projects"的第⑸步]进行审批。
⑽
"My Alfresco"
中,点击Manager图片进入
进入后点击"Approve"按钮即可完成提交到Staging Sandbox。
提交后Preview预览Staging Sandbox的地址是
projecttest.www--sandbox.127-0-0-1
格式为:project名称.www--sandbox.主机地址
注:
比较三个地址的不同:
Preview
预览的地址是
preview.admin.projecttest.www--sandbox.127-0-0-1
格式为:
preview.
用户名.project名称.www--sandbox.主机地址
Preview
预览My Sandbox的地址是
admin.projecttest.www--sandbox.127-0-0-1
格式为:
用户名.project名称.www--sandbox.主机地址
提交后Preview预览Staging Sandbox的地址是
projecttest.www--sandbox.127-0-0-1
格式为:
project
名称.www--sandbox.主机地址
附1:
综上所述,"Web Forms"实际上是XSD+XSL的组合,使用这些web模板可以创建相应的页面时,根据XSD+XSL先提供一个表单,你在表单上输入一些数据之后即可生成对应的XML文件,然后根据这个XML生成指定格式的文件(比如jsp/shtml/html等)。
本来还想继续写一点使用WSF创建WCM的东西,感觉写这些咚咚太累了,具体的使用过程就可参考我的前一篇文章
《翻译:Alfresco WCM Website Framework (WSF)
》
吧。
附2:
上面创建web form使用的
XSD+XSL
等模板文件实际上alfresco WCM自带有很多例子,分别位于
alfresco\tomcat\webapps\alfresco\extras\wcm\
contentmodels
(XSD)和
alfresco\tomcat\webapps\alfresco\extras\wcm\
templates
(XSL),大家尝试使用WCM中的例子创建一些webform并添加一些web content,然后看看运行结果,实际上WCM自带的很多例子在我们实际开发WCM的时候都会用到或者以它为基础改写里面的一些
XSD+XSL
。
Alfresco WCM安装和使用.pdf 下载地址:
Alfresco WCM安装和使用.part1.rar
Alfresco WCM安装和使用.part2.rar
Alfresco WCM安装和使用.part3.rar
版权所有:(xiaodaoxiaodao)蓝小刀 xiaodaoxiaodao@gmail.com