All user changes, such as uploading a file in the system, are stored in their sandbox until they are submitted to the Staging Sandbox.. • The User Sandbox also maps all files in the Stag
Trang 1Web project Sandboxes
Before you delve into the details of web projects, it is worthwhile to understand the concept of sandboxes
• Each user in a web project is provided their own sandbox
• Each web project has a Staging Sandbox All user changes, such as uploading
a file in the system, are stored in their sandbox until they are submitted to the Staging Sandbox
• The User Sandbox also maps all files in the Staging Sandbox, which have not been modified by the current user, providing a complete view of the web project for that specific user with their current changes
• The Staging Sandbox has all files submitted by each user, where the current view is the most recently submitted version of a specific file
The following diagram illustrates what user Mark sees with no modified file in his sandbox Note how he sees the Staging Sandbox's version of Index.html:
Mark creates or uploads a new products page He will see the new Products.html file and the staging's version of the Index.html file
Trang 2Now Mark modifies the Index.html file to link to the Products.html file This creates a new version of the Index.html file in his sandbox He no longer sees the current Staging Sandbox's version of the file as illustrated in the following diagram:
Mark is satisfied with his changes and submits them through workflow and the two files are promoted to staging His versions of the Index.html and Products.html files become the Staging Sandbox's current versions as shown in the next diagram:
Trang 3User Sandbox interface
The following screenshot shows the WCM interface for the user's sandbox at the
bottom and the Staging Sandbox at the top:
Using this interface users can:
• Browse their sandbox and the Staging Sandbox web project hierarchy using
the appropriate Browse Website action.
• Preview the website based on the state of their sandbox or the Staging
Sandbox using the appropriate Preview Website action.
• Submit all modified files from their sandbox to a workflow using the Submit All action.
• Roll back all modified files in their sandbox using the Undo All action.
Trang 4Advanced Versioning Manager (AVM)
Sandboxes are backed by the Advanced Versioning Manager (AVM) The AVM
is an advanced repository implementation designed to support the version
control requirements of large websites and web applications It is a completely different implementation from the stores used by Alfresco Document and Records Management Think of the AVM as a virtual time machine For example, if you want
to look at how a particular file appeared one month ago, you will be able to see it against the backdrop of how everything else looked one month ago The state of the entire repository will be recorded in an efficient manner at each moment in its transaction history The AVM provides the following features, including some found
in other software tools like Subversion and TeamSite:
• Directories, renames, and file metadata will be versioned
• Every moment in transaction history is available immediately as a
read-only filesystem
• All directories are first-class versioned objects
• Branching will be a constant-time operation
• Choice of database backends (for example, MySQL, Oracle, PostgreSQL)
• Access through CIFS
Alfresco AVM is an advanced store implementation designed to support the version control requirements of managing large websites and web applications The AVM consists of a forest of content stores that can be used to manage the development and staging of web content and associated source code Each AVM store is loosely modeled on Subversion, providing source code control for websites Each AVM store supports an extended versioning model, including:
• File-level version control
• File-level branching
• Directory-level version control
• Directory-level branching
• Store-level version control (snapshots)
• Store-level branching
Trang 5In addition to these extended versioning operations, the AVM also supports the following capabilities:
File version comparison
• Between two file versions on the same branch within a single store
• Between two file versions on different branches within the same store
• Between two file versions between any two stores
Directory version comparison
• Between two directory versions on the same branch within a single store
• Between two directory versions on different branches within the same store
• Between two directory versions between any two stores
Store version comparison
• Between two versions of any single store
• Between any two stores
AVM's support for file, directory, and store comparison provides the basis for synchronization operations, for example, to synchronize any two branched versions
of a source tree within an AVM store or maintained in separate AVM stores
The web project
A web project contains all of the content and assets (files and images) required for the website(s) All actions for managing a specific website, creating content, uploading assets, reviewing and previewing content, workflows, managing web forms,
managing rendering templates, and publishing are associated to a web project
Create the web project
To create a new web project, go to the Company Home | Web Projects space, select the Create drop-down menu and click on the Create Web Project link as shown in
the following screenshot:
Trang 6You will see the Create Web Project Wizard, which includes seven steps in creating
a web project as follows:
1 Specify the basic web project details
2 Indicate if you are creating a new project or using the structure of an
existing project
3 Configure deployment servers
4 Select and configure web forms for generating site content
5 Select and configure workflow for content added that is not generated by a web form
6 Add users and assign user roles to them
7 E-mail a notification to the selected users
The Create Web Project Wizard is shown in the following screenshot for
your reference:
Trang 7Step one: Web Project Details
Use some sample web project information to complete the step
Name Unique name of your web project This is used as unique ID for your
web project
such as Cignex.com
it is called as ROOT in WCM You can have more than one web application in your web project The details of creating more web
applications are given in Chapter 8, Managing Multiple Websites
Using WCM.
Use as a template? This web project can also be used as a template project to create many
such web projects with the click of a button
customize it to have your own preview server
Step two: Create From Existing Web Project
Select the Create a new empty Web Project option and click on the Next button. Step three: Configure Deployment Receivers
Click on Add Deployment Receiver to display the configuration details Use the
following information to complete the page More information about the deployment
receiver and the deployment process is explained in Chapter 7, Content Delivery and Deployment.
Type Live Server
Host localhost
Trang 8Step five: Configure Workflow
This step helps you to add and configure a new workflow for the web project The workflow can also be associated with a web form (from the previous step)
Workflows are covered very extensively in this book in Chapters 5 and 6 Refer these chapters for understanding more about adding and configuring workflows For this
web project, do not select any workflow Click on the Next button to skip this step. Step six: Add Users
This step allows you to select the content managers for this web project from the list
of available users
Using the search feature provided, locate and select the user Select Content
Manager as the role for this user and click on Add to List You can add as many
users as you want to a specific web project:
Trang 9Step seven: Email Users
Accept the default option No so that a notification e-mail is not sent.
Summary
Review the summary screen and click on the Finish button once you are fine with
the information provided in the summary
You can always add or modify the web project details at any given point of time
The new web project appears in the Web Projects space Completing the wizard automatically creates a source repository called a Staging Sandbox, and a set of development repositories called User Sandboxes There is one User Sandbox for
each user invited to work on the project, as well as an administrator sandbox
Creating a site easily with web project
In this section we shall see how we can easily create a website with a web project For this we will use an existing ROOT folder, and import it into the web projects folder The details of creating a website from scratch are given in the subsequent chapters of the book
1 Create a new web project CIGNEX Technologies:
Trang 102 Import the zip file of the existing ROOT folder into the newly created web project:
3 Click on the created website, CIGNEX Technologies.