Getting Started with Alfresco WCM
[ 82 ]
Web 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 le in the system, are stored in their sandbox until they are submitted to the
Staging Sandbox.
• The User Sandbox also maps all les in the Staging Sandbox, which have not
been modied by the current user, providing a complete view of the web
project for that specic user with their current changes.
• The Staging Sandbox has all les submitted by each user, where the current
view is the most recently submitted version of a specic le.
The following diagram illustrates what user Mark sees with no modied le 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
le and the staging's version of the Index.html le.
Download from Wow! eBook <www.wowebook.com>
Chapter 3
[ 83 ]
Now Mark modies the Index.html le to link to the Products.html le. This
creates a new version of the Index.html le in his sandbox. He no longer sees the
current Staging Sandbox's version of the le as illustrated in the following diagram:
Mark is satised with his changes and submits them through workow and the two
les are promoted to staging. His versions of the Index.html and Products.html
les become the Staging Sandbox's current versions as shown in the next diagram:
Download from Wow! eBook <www.wowebook.com>
Getting Started with Alfresco WCM
[ 84 ]
User 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 modied les from their sandbox to a workow using the Submit
All action.
• Roll back all modied les in their sandbox using the Undo All action.
• Refresh their sandbox or the Staging Sandbox using the appropriate Refresh
action. This is useful to view a new le submitted in another fashion (CIFS)
in the user's sandbox, or new submission in the Staging Sandbox from
other users.
Download from Wow! eBook <www.wowebook.com>
Chapter 3
[ 85 ]
Advanced 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 le 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 efcient 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 le metadata will be versioned
• Every moment in transaction history is available immediately as a
read-only lesystem
• All directories are rst-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
Download from Wow! eBook <www.wowebook.com>
Getting Started with Alfresco WCM
[ 86 ]
In addition to these extended versioning operations, the AVM also supports the
following capabilities:
File version comparison
• Between two le versions on the same branch within a single store
• Between two le versions on different branches within the same store
• Between two le 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 le, 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 (les and images) required for the
website(s). All actions for managing a specic website, creating content, uploading
assets, reviewing and previewing content, workows, 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:
Download from Wow! eBook <www.wowebook.com>
Chapter 3
[ 87 ]
You 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. Congure deployment servers.
4. Select and congure web forms for generating site content.
5. Select and congure workow for content added that is not generated by a
web form.
6. Add users and assign user roles to them.
7. E-mail a notication to the selected users.
The Create Web Project Wizard is shown in the following screenshot for
your reference:
Download from Wow! eBook <www.wowebook.com>
Getting Started with Alfresco WCM
[ 88 ]
Step 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.
DNS name
DNS name for deployment. Usually it is your website DNS entry
such as Cignex.com.
Default Webapp
Your web project can have a web application folder name. By default
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.
Title
Title of your web project.
Description
Brief description of the web project.
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.
Preview Provider
By default Alfresco provides Virtualization Server Preview. You can
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: Congure Deployment Receivers
Click on Add Deployment Receiver to display the conguration 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
Port
44100
Username
admin
Password
admin
Step four: Congure Web Forms
Web form is a very important functionality of WCM. We are going to skip this step
as web forms are covered in detail in Chapter 4, Web Content Production with Web
Forms. Click on the Next button to skip this step.
Download from Wow! eBook <www.wowebook.com>
Chapter 3
[ 89 ]
Step ve: Congure Workow
This step helps you to add and congure a new workow for the web project. The
workow can also be associated with a web form (from the previous step).
Workows are covered very extensively in this book in Chapters 5 and 6. Refer these
chapters for understanding more about adding and conguring workows. For this
web project, do not select any workow. 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 specic web project:
Download from Wow! eBook <www.wowebook.com>
Getting Started with Alfresco WCM
[ 90 ]
Step seven: Email Users
Accept the default option No so that a notication e-mail is not sent.
Summary
Review the summary screen and click on the Finish button once you are ne 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:
Download from Wow! eBook <www.wowebook.com>
Chapter 3
[ 91 ]
2. Import the .zip le of the existing ROOT folder into the newly created
web project:
3. Click on the created website, CIGNEX Technologies.
Download from Wow! eBook <www.wowebook.com>