2014-02-27 129 views

回答

5

存储库层:这是你的alfresco.war。这是Alfresco知识库的工作原理。它还包括一个名为Alfresco Explorer的旧Web客户端,目前这个客户端大部分都未使用。

Share Tier:这是你的share.war。 Alfresco Share是当人们需要做基本的文档管理或团队协作时使用的网络客户端。

这两个都是Web应用程序,所以它们在“Web层”中运行。

Alfresco网页脚本框架用于提供RESTful界面。可能令人困惑的是,存储库层和共享层都包含Web脚本框架。

web脚本框架是模型 - 视图 - 控制器(MVC)模式的实现。控制器是用服务器端JavaScript或Java编写的。所以这是你可以用Alfresco编写服务器端JavaScript的地方。还有其他地方。

服务器端JavaScript意味着JavaScript完全在服务器上运行,无论是在alfresco.war中运行还是share.war都无关紧要。重点在于它完全是服务器端 - 不涉及Web浏览器。

最后,客户端JavaScript是JavaScript内部运行的JavaScript解释器中运行的客户端计算机上运行的Web浏览器。像今天大多数Web应用程序一样,Alfresco Share使用了很多客户端JavaScript。

因此,与露天分享一个典型的互动可能是这样的:

  1. 浏览器请求的页面。共享Web应用程序中的Web脚本框架运行一些服务器端JavaScript,并最终以浏览器中呈现的HTML页面的形式返回响应。

  2. 在浏览器的页面上,可能会有一些客户端JavaScript运行来处理该网页中的处理。

  3. 用户单击引起客户端JavaScript调用共享Web应用程序中运行的Web脚本的内容。这可能会异步发生(不会导致整个页面刷新)。

  4. 该web脚本可以有一个用服务器端JavaScript编写的控制器。如果需要来自Alfresco存储库的任何数据,它将调用运行在Alfresco Web应用程序中的Web脚本。

  5. 存储库上的Web脚本还可能包含服务器端JavaScript,该服务器端JavaScript处理该请求并向在Alfresco Share中运行的服务器端JavaScript返回响应。

  6. 在Alfresco Share中运行的服务器端JavaScript处理从Alfresco存储库获得的响应并将响应返回给客户端。

服务器端JavaScript利用Alfresco JavaScript API。客户端JavaScript利用客户端库,如YUI和Dojo以及一些Alfresco特定的客户端库。所以你可能有一个web脚本产生一个包含客户端JavaScript的页面,或者你可能拥有调用服务器端JavaScript的客户端JavaScript,但是你永远不会在服务器端运行同样的东西,客户端。

+0

Thx很多杰夫。这非常有帮助 – user2554076