版权所有:(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解压后的截图如下,

alfresco2.JPG 

可以看到alfresco/tomcat/webapps有一个alfresco应用,我们要发布WCM,必须把WCM解压到这里,把下载的WCM解压到这里解压到alfresco/tomcat/webapps/alfresco目录下,

 

解压后可以看到目录结构如下:

alfresco_wcm.JPG 

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"

alfresco_wcm_webproject.JPG"Company Home"" 数据字典"下增加"Web Forms"

alfresco_wcm_webforms.JPG 

当我们使用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"按钮上点击,出现下拉菜单,如下图:

alfresco_webform_create1.JPG 

选择"Create Web Form",进入下一步:

alfresco_webform_create2.JPG 

在这里需要我们一个XML schema文件,点"浏览"按钮,选择一个XSD文件(为便于测试,我这里提供了一个simpletest.xsd文件,下载自行解压),选择后如下图:

alfresco_webform_create3.JPG 

选择后"Next"按钮由灰色状态变为可选,点"Next"按钮,进入下一步:

alfresco_webform_create4.JPG 

如上图所示,可以选择三种模板文件(FreeMarker/XSLT/XSL-FO),这里我们选择最熟悉的XSL文件(为便于测试,我这里提供了一个simpletest.xsl文件),选择后如下图:

alfresco_webform_create5.JPG选择后"Add to List"按钮由灰色状态变为可选,点"Add to List"按钮把XSL文件添加到已选列表中(在这里可以选择多个FreeMarker/XSLT/XSL-FO模板文件)

 

然后点击"Next"按钮进入下一步:

alfresco_webform_create6.JPG 

直接点击"Next"按钮进入下一步,然后点击"Finish"按钮完成"Web Forms"的创建,可以看到"Web Forms"中出现刚才新创建的Web Form,名称是"simpletest"

alfresco_webform_create7.JPG 

 

创建"Web Projects"

进入"Company Home"——"Web Projects",在"Create"按钮上点击,出现下拉菜单,如下图:

alfresco_webproject_create1.JPG 

选择"Create Web Project",进入下一步:

alfresco_webproject_create2.JPG 

输入NameDNS两个必选项(这里项目名称设为"projecttest"),然后点"Next"按钮,进入下一步:

alfresco_webproject_create3.JPG 

"Add to List"按钮把刚才创建的web from添加到已选列表中(如果你在上面创建了不止一个web from,在这里可以选择多个web from

alfresco_webproject_create4.JPG 

这里看到上面有一个黄色警告,你可以点击"Configure Workflow"进去匹配相应的审批流程:

alfresco_webproject_create5.JPG 

点击"Search"按钮,选择"Administrator",点击"Add to List"按钮添加审批人(发布文件到这个项目时的审批人)。

 

点击"OK"按钮返回到上一步黄色警告已经消失。

content 操作权限,也可以直接点击"Next"按钮进入下一步。

 

中点击"Next"按钮进入下一步:

alfresco_webproject_create6.JPG 

点击"Next"按钮进入下一步:

alfresco_webproject_create7.JPG 

点击"Search"按钮,选择"Administrator",选择"Content Manager",点击"Add to List"按钮用户的content管理角色(角色有Content Manager/Content Publisher/Content Contributor/ Content Reviewer四种)。

 

点击"Next"按钮进入下一步:

alfresco_webproject_create8.JPG点击"Next"按钮进入下一步,然后点击"Finish"按钮完成"Web Pojects"的创建,可以看到"Web Pojects"中出现刚才新创建的Web Poject,名称是"projecttest"

alfresco_webproject_create9.JPG 

创建Web ProjectWeb Forms之后,我们就可以使用WCM了,如何使用,下面进行一个简单的内容创建:

点击刚刚创建的projecttest,进入:

alfresco_webproject_wcm1.JPG进入之后可以看到有两个工程,Staging Sandbox用来正式发布,My Sandbox(因为登陆时用的admin用户,所以这里的My Sandboxadmin用户下的,等一下我们通过URL预览My Sandbox应用的时候可以清楚的看到这一点)是针对每个用户的,每个用户都拥有一个自己的My Sandbox工程,只有提交(Submitted)之后才会进入Staging Sandbox

 

点击"Create Content"链接进入content编辑页面:

alfresco_webproject_wcm2.JPG 

点击"Next"按钮进入下一步:

alfresco_webproject_wcm3.JPG 

我们看到有"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"按钮 进入下一步:

alfresco_webproject_wcm4.JPG 

点击Preview图片进行预览,我们会发现出现无法显示网页的问题:

alfresco_webproject_wcm5.JPG 

 

查看控制台,发现:

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页面:

alfresco_webproject_wcm6.JPG1 如果依然不成功,需要你在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上:

alfresco_webproject_wcm7.JPG 

如果我们这时再点击Preview图片进行预览,可以看到这时预览的地址已经是发布地址了:

alfresco_webproject_wcm8.JPG 

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):

alfresco_webproject_wcm9.JPG 

点击"OK"按钮,这个时候还没有到提交到Staging Sandbox,还需要审批人[创建"Web Projects"的第]进行审批。

 

"My Alfresco" 中,点击Manager图片进入

alfresco_webproject_wcm10.JPG 

进入后点击"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