Alfresco 4 Enterprise Content Management Implementation — Save 50%
Install, administer, and manage this powerful open source Java-based Enterprise CMS with this book and ebook
This article by Munwar Shariff,Snehal Shah,Rajesh R Avatani,Jayesh Prajapati,Vandana Pal,Vinita Choudhary,Amita Bhandari and Pallika Majmudar authors of Alfresco 4 Enterprise Content Management Implementation,introduces you to the basic features of creating and managing content in Alfresco using Alfresco Explorer. With Alfresco, you can manage any type of document, such as HTML, text, XML, Microsoft Office documents, Adobe PDF, Flash, scanned image, media, and video files. You will also understand the concepts of creating and using categories and smart spaces. This article also focuses on the most important aspect of adopting a new enterprise content management system, which is migrating the existing data and using it effectively. In this article , you will learn various secure ways to share your content online using the syndication features.
By the end of this article , you will have learned how to:
Create spaces and fill them with documents
Automatically control the document versioning
Lock, check-in, and check-out the documents
Categorizing content so that you could facilitate search
Access documents in the Alfresco repository from your web browser, or a networked drive, FTP, and WebDAV
Recover deleted content
Create and use space templates
Migrate existing documents to Alfresco
Create and use discussions on spaces and documents
Enable RSS Syndication to share content
(For more resources related to this topic, see here.)
A space in Alfresco is nothing but a folder, which contains content as well as sub-spaces. Space users are the users invited to a space to perform specific actions, such as editing content, adding content, discussing a particular document, and so on. The exact capability a given user has within a space is a function of their role or rights.
Consider the capability of creating a sub-space. By default, to create a sub-space, one of the following must apply:
The user is the administrator of the system
The user has been granted the Contributor role.
The user has been granted the Coordinator role.
The user has been granted the Collaborator role.
Similarly, to edit space properties, a user will need to be the administrator or be granted a role that gives them rights to edit the space. These roles include Editor, Collaborator, and Coordinator.
Space is a smart folder
Space is a folder with additional features such as security, business rules, workflow, notifications, local search, and special views. These additional features which make a space a smart folder are explained as follows:
Space security: You can define security at the space level. You can specify a user or a group of users, who may perform certain actions on content in a space. For example, on the Marketing Communications space in intranet, you can specify that only users of the marketing group can add the content and others can only see the content.
Space business rules: Business rules, such as transforming content from Microsoft Word to Adobe PDF and sending notifications when content gets into a space can be defined at space level.
Space workflow: You can define and manage content workflow on a space. Typically, you will create a space for the content to be reviewed, and a space for approved content. You will create various spaces for dealing with the different stages the work flows through, and Alfresco will manage the movement of the content between those spaces.
Space events: Alfresco triggers events when content gets into a space, or when content goes out of a space, or when content is modified within a space. You can capture such events at space level and trigger certain actions, such as sending e-mail notifications to certain users.
Space aspects: Aspects are additional properties and behavior, which could be added to the content, based on the space in which it resides. For example, you can define a business rule to add customer details to all the customer contract documents in your intranet's Sales space.
Space search: Alfresco search can be limited to a space. For example, if you create a space called Marketing, you can limit the search for documents within the Marketing space, instead of searching the entire site.
Space syndication: Space content can be syndicated by applying RSS feed scripts on a space. You can apply RSS feeds on your News space, so that other applications and websites can subscribe for news updates.
Space content: Content in a space can be versioned, locked, checked-in and checked-out, and managed. You can specify certain documents in a space to be versioned and others not.
Space network folder: Space can be mapped to a network drive on your local machine, enabling you to work with the content locally. For example, using CIFS interface, space can be mapped to the Windows network folder.
Space dashboard view: Content in a space can be aggregated and presented using special dashboard views. For example, the Company Policies space can list all the latest policy documents which are updated for the past one month or so. You can create different views for Sales, Marketing and Finance departmental spaces.
Importance of space hierarchy
Like regular folders, a space can have child spaces (called sub-spaces) and sub-spaces can further have sub-spaces of their own. There is no limitation on the number of hierarchical levels. However, the space hierarchy is very important for all the reasons specified above in the previous section. Any business rule and security defined at a space is applicable to all the content and sub-spaces underlying that space by default.
Use the created system users, groups, and spaces for various departments as per the example. Your space hierarchy should look similar to the following screenshot:
A space in Alfresco enables you to define various business rules, a dashboard view, properties, workflow, and security for the content belonging to each department. You can decentralize the management of your content by giving access to departments at individual space levels.
The example of the intranet space should contain sub-spaces, as shown in the preceding screenshot. If you have not already created spaces, you must do it now by logging in as administrator. Also, it is very important to set security (by inviting groups of users to these spaces).
Editing a space
Using a web client, you can edit the spaces you have added previously. Note that you need to have edit permissions on the spaces to edit them.
Editing space properties
Every space listed will have clickable actions, as shown in the following screenshot:
These clickable actions will be dynamically generated for each space based on the current user's permissions on that space. If you have copy permission on a space, you will notice the copy icon as a clickable action for that space. On clicking the View Details action icon, the detailed view of a space will be displayed, as shown in the next screenshot:
The detailed view page of a space allows you to select a dashboard view for viewing and editing existing space properties, to categorize the space, to set business rules, and to run various actions on the space, as shown in the preceding screenshot.
To edit space properties, click on the Edit Space Properties icon, shown in the preceding screenshot. You can change the name of the space and other properties as needed.
Deleting space and its contents
From the list of space actions, you can click on the Delete action to delete the space. You need to be very careful while deleting a space as all the business rules, sub-spaces, and the entire content within the space will also be deleted.
Moving or copying space by using the clipboard
From the list of space actions, you can click on the Cut action to move a space to the clipboard. Then you can navigate to any space hierarchy, assuming that you have the required permissions to do so, and paste this particular space, as required.
Similarly, you can use the Copy action to copy the space to some other space hierarchy. This is useful if you have an existing space structure (such as a marketing project or engineering project), and you would like to replicate it along with the data it contains.
The copied or moved space will be identical in all aspects to the original (source) space. When you copy a space, the space properties, categorization, business rules, space users, entire content within the space, and all sub-spaces along with their content will also be copied.
Creating a shortcut to a space for quick access
If you need to frequently access a space, you can create a shortcut (similar to the Favorite option in Internet browsers) to that space, in order to reach the space in just one click. From the list of space actions, you can click on the Create Shortcut action to create a shortcut to the existing space. Shortcuts are listed in the left-hand side shelf.
Consider a scenario where after creating the shortcut, the source space is deleted. The shortcuts are not automatically removed as there is a possibility for the user to retrieve the deleted space. What will happen when you click on that shortcut link in the Shelf? If the source space is not found (deleted by user), then the shortcut will be removed with an appropriate error message.
Choosing a default view for your space
There are four different out-of-the-box options available (as shown in the screenshot overleaf). These options support the display of the space's information:
Details View: This option provides listings of sub-spaces and content, in horizontal rows.
Icon View: This option provides a title, description, timestamp, and action menus for each sub-space and content item present in the current space.
Browse View: Similar to the preceding option, this option provides title, description, and list of sub-spaces for each space.
Dashboard View: This option is disabled and appears in gray. This is because you have not enabled the dashboard view for this space. In order to enable dashboard view for a space, you need to select a dashboard view (Refer to the icon shown in the preceding screenshot).
Sample space structure for a marketing project
Let us say you are launching a new marketing project called Product XYZ Launch. Go to the Company Home | Intranet | Marketing Communications space and create a new space called Product XYZ Launch and create various sub-spaces as needed. You can create your own space structure within the marketing project space to manage content. For example, you can have a space called 02_Drafts to keep all the draft marketing documents and so on.
Content could be of any type, as mentioned at the start of this article. By using the Alfresco web client application, you can add and modify content and its properties. You can categorize content, lock content for safe editing, and can maintain several versions of the content. You can delete content, and you can also recover the deleted content.
This section uses the space you have already created as a part of your Intranet sample application. As a part of sample application, you will manage content in the Intranet | Marketing Communications space. Because you have secured this space earlier, only the administrator (admin) and users belonging to the Marketing group (Peter Marketing and Harish Marketing) can add content in this space. You can log in as Peter Marketing to manage content in this space.
A web client provides two different interfaces for adding content. One can be used to create inline editable content, such as HTML, text, and XML, and the other can be used to add binary content, such Microsoft office files and scanned images.
You need to have either administrator, contributor, collaborator, or coordinator roles on a space to create content within that space.
Creating text documents HTML, text, and XML
To create an HTML file in a space, follow these steps:
Ensure that you are in the Intranet | Marketing Communications | Product XYZ Launch | 02_Drafts space.
On the header, click on Create | Create Content. The first pane of the Create Content wizard appears. You can track your progress through the wizard from the list of steps at the left of the pane.
Provide name of the HTML file, select HTML as Content Type and click on the Next button. The Enter Content pane of the wizard appears, as shown in the next screenshot. Note that Enter Content is now highlighted in the list of steps at the left of the pane:
You can see that there is a comprehensive set of tools to help you format your HTML document. Enter some text, using some of the formatting features.
If you know HTML, you can also use the HTML editor by clicking on the HTML icon. The HTML source editor is displayed. Once you update the HTML content, click on the Update button to return to the Enter Content pane in the wizard, with the contents updated.
After the content is entered and edited in the Enter Content pane, click on Finish. You will see the Modify Content Properties screen, which can used to update the metadata associated with the content.
Give some filename with .html as extension. Also, you will notice that then Inline Editing checkbox is selected by default. Once you are done with editing the properties, click on the OK button to return to the 02_Drafts space, with your newly created file inserted.
You can launch the newly created HTML file by clicking on it. Your browser launches most of the common files, such as HTML, text, and PDF. If the browser could not recognize the file, you will be prompted with the windows dialog box containing the list of applications, from which you must choose an application. This is the normal behavior if you try to launch a file on any Internet page.
Uploading binary files – Word, PDF, Flash, Image, and Media
Using a web client, you can upload content from your hard drive. Choose a file from your hard disk that is not an HTML or text file. I chose Alfresco_CIGNEX.docx from my hard disk for the sample application. Ensure that you are in the Intranet | Marketing Communications | Product XYZ Launch | 02_Drafts space.
To upload a binary file in a space, follow these steps:
In the space header, click on the Add Content link. The Add Content dialog appears.
To specify the file that you want to upload, click Browse. In the File Upload dialog box, browse to the file that you want to upload. Click Open. Alfresco inserts the full path name of the selected file in the Location textbox.
Click on the Upload button to upload the file from your hard disk to the Alfresco repository. A message informs you that your upload was successful, as shown in the following screenshot.
Click OK to confirm.
Modify the Content Properties dialog appears. Verify the pre-populated properties and add information in the textboxes. Click OK to save and return to the 02_Drafts space.
The file that you uploaded appears in the Content Items pane. Alfresco extracts the file size from the properties of the disk file, and includes the value in the size row.
You can edit the content in Alfresco in three different ways: by using the Edit Online, Edit Offline, and Update actions. Note that you need to have edit permissions on the content to edit them.
Online editing of HTML, text, and XML
HTML files and plain text files can be created and edited online. If you have edit access to a file, you will notice a small pencil (Edit Online) icon, as shown in the following screenshot:
Clicking on the pencil icon will open the file in its editor. Each file type is edited in its own WYSIWYG editor. Once you select to edit online, a working copy of the file will be created for editing, whereas the original file will be locked, as shown in the next screenshot.
The working copy can be edited further as needed by clicking on the Edit Online button. Once you are done with editing, you can commit all the changes to the original document by clicking on the Done Editing icon.
For some reason, if you decided to cancel editing of a document and discard any changes, you can do that by clicking on the Cancel Editing button given below. If you cancel editing of a document, the associated working copy will be deleted and all changes to it since it was checked out will be lost.
The working copy can be edited by any user who has edit access to the document or the folder containing the document. For example, if user1 created the working copy and user2 has edit access to the document, and then both user1 and user2 can edit the working copy.
Consider a scenario where user1 and user2 are editing the working copy simultaneously. If user1 commits the changes first, then the edits done by user2 will be lost.
Hence, it is important to follow best practices in editing the working copy. Some of these best practices are listed here for your reference:
Securing the edit access to the working copy to avoid multiple users simultaneously editing the file
Saving the working copy after each edit to avoid losing the work done
Following the process of allowing only the owner of the document edit the working copy. If others need to edit, they can claim the ownership
Triggering the workflow on working copy to confirm the changes before committing
Offline editing of files
If you wish to download the files to your local machine, edit it locally, and then upload the updated version to Alfresco, then you might consider using the Edit Offline option (pencil icon).
Once you click on the Edit Offline button, the original file will be locked automatically and a working copy of the file will be created for download. Then you will get an option to save the working copy of the document locally on your laptop or personal computer.
If you don't want to automatically download the files for offline editing, you can turn off this feature. In order to achieve this, click on the User Profile icon in the top menu, and uncheck the option for Offline Editing, as shown here:
The working copy can be updated by clicking on the Upload New Version button. Once you have finished editing the file, you can commit all the changes to the original document by clicking on the Done Editing icon. Or you can cancel all the changes by clicking on the Cancel Editing button.
Uploading updated content
If you have edit access to a binary file, you will notice the Update action icon in the drop-down list for the More actions link. Upon clicking on the Update icon, the Update pane opens. Click on the Browse button to upload the updated version of the document from your hard disk. It is always a good practice to check out the document and update the working copy rather than directly updating the document. Checking the file out avoids conflicting updates by locking the document, as explained in the previous section.
Content will have clickable actions, as shown in the upcoming screenshot. These clickable actions (icons) will be dynamically generated for a content based on the current user's permissions for that content. For example, if you have copy permission for the content, you will notice the Copy icon as a clickable action for that content.
Click on the Delete action, from the list of content actions, to delete the content. Please note that when content is deleted, all the previous versions of that content will also be deleted.
Moving or copying content using the clipboard
From the list of content actions, as shown in the preceding screenshot, you can click on the Cut action to move content to the clipboard. Then, you can navigate to any space hierarchy and paste this particular content as required.
Similarly, you can use the Copy action to copy the content to another space.
Creating a shortcut to the content for quick access
If you have to access a particular content very frequently, you can create a shortcut (similar to the way you can with Internet and Windows browser's Favorite option) to that content, in order to reach the content in one click. From the list of content actions, as shown in the preceding screenshot, you can click on the Create Shortcut action to create a shortcut to the existing content. Shortcuts are listed in the left-hand side Shelf.
Managing content properties
Every content item in Alfresco will have properties associated with it. Refer to the preceding screenshot to see the list of properties, such as Title, Description, Author, Size, and Creation Date. These properties are associated with the actual content file, named Alfresco_CIGNEX.docx.
The content properties are stored in a relational database and are searchable using Advanced Search options.
What is Content Metadata?
Content properties are also known as Content Metadata. Metadata is structured data, which describes the characteristics of the content. It shares many similar characteristics with the cataloguing that takes place in libraries. The term "Meta" derives from the Greek word denoting a nature of a higher order or more fundamental kind. A metadata record consists of a number of predefined elements representing specific attributes of content, and each element can have one or more values.
Metadata is a systematic method for describing resources, and thereby improving access to them. If access to the content will be required, then it should be described using metadata, so as to maximize the ability to locate it. Metadata provides the essential link between the information creator and the information user.
While the primary aim of metadata is to improve resource discovery, metadata sets are also being developed for other reasons, including:
Typically, in most of the content management systems, once you upload the content file, you need to add the metadata (properties), such as title, description, and keywords to the content manually. Most of the content, such as Microsoft Office documents, media files, and PDF documents contain properties within the file itself. Hence, it is double the effort, having to enter those values again in the content management system along with the document.
Alfresco provides built-in metadata extractors for popular document types to extract the standard metadata values from a document and populate the values automatically.
This is very useful if you are uploading the documents through FTP, CIFS, or WebDAV interface, where you do not have to enter the properties manually, as Alfresco will transfer the document properties automatically.
To edit metadata, you need to click the Edit Metadata icon () in content details view. Refer the Edit Metadata icon shown in the screenshot, which shows a detailed view of the Alfresco_CIGNEX.docx file. You can update the metadata values, such as Name and Description for your content items. However, certain metadata values, such as Creator, Created Date, Modifier, and Modified Date are read-only and you cannot change them. Certain properties, such as Modifier and Modified Date will be updated by Alfresco automatically, whenever the content is updated.
Adding additional properties
Additional properties can be added to the content in two ways. One way is to extend the data model and define more properties in a content type.
The other way is to dynamically attach the properties and behavior through Aspects. By using aspects, you can add additional properties, such as Effectivity, Dublin Core Metadata, and Thumbnailable, to the content.
eBook Price: $35.99
Book Price: $59.99
Library services are the common document management functions for controlling the users with permissions to create multiple instances of a document (versioning) and the users with access a document to make changes (checking-in/out).
So far, you have learned about creating spaces, adding files, and editing them. You might have more than one person who can edit a document. What if somebody edits a document, and removes a useful piece of information? Well, you can use versioning features to avoid such issues.
Versioning allows history of previous versions of a content to be kept. Content needs to be versionable for versions to be kept. You can enable versioning in four different ways:
Individually: To enable versioning for an individual content item, go to the View Details page and click on the Allow Versioning link. The screenshot on the next page illustrates the way to enable versioning on an individual content item.
Using Smart Spaces: A business rule can be set for a space to allow versioning of all the content or selective content within that space.
By Type: By default, versioning is disabled for all content types in the Alfresco content model. Versioning can be enabled for a specific content type in the Alfresco content model, irrespective of the location of the content.
Globally: Alfresco can be configured globally to enable versioning for all the content throughout the site.
Enable versioning for the sample file you have already uploaded to the system. Go to the Intranet | Marketing Communications | Product XYZ Launch | 02_Drafts space and view details of the Alfresco_CIGNEX.docx file. Click on the Allow Versioning link to enable versioning, as shown in the following screenshot, and you will immediately notice that a version with 1.0 is created:
Auto versioning can be enabled by editing the content properties and selecting the Auto Version checkbox.
If auto versioning is enabled, then each Save of the content results in an incremented version number when edited directly from repository. Each Update (upload) of content also results in an incremented version number. If auto versioning is not enabled, version number is incremented only when content is checked in.
Check In and Check Out
By using the versioning feature, you can ensure that all the changes made to a document were saved. You might have more than one person who can edit a document. What if two people edit a document at once, and you get into a mess with two new versions. To resolve this issue, you'll need the library services.
Library services provide the ability to check out a document, reserving it for one user to edit while others can only access the document in a read-only mode. Once the necessary changes are made to the document, the user checks in the document and can either replace the original or create a version of the original.
Check Out locks the item and creates a working copy, which can be edited (content and details). Check In replaces the original item with the working copy and releases the lock.
Checking out documents
Ensure that you are in the Intranet | Marketing Communications | Product XYZ Launch | 02_Drafts space. For checking Alfresco_CIGNEX.docx, click on the More Actions button and then click on the Check Out action.
You can either check out the file in the current space or to any other predefined space. As best practice, it is recommended to check out the working copy in the user's own Home Space. For the current example, choose to check out the file to the In the current space option and click on the Check Out button. You will return to the 02_Drafts space.
You will notice two copies of the same document. The original version of the file has a lock. This indicates that no one else can check out this file until you have checked it in again. The original version of the file can't be edited (no pencil icon) or cannot be checked out (no Check Out icon). The desired effect of all these features is that you cannot edit a checked-out file deliberately or accidentally.
You can only update the working copy. The checked-out file has Working Copy inserted in the filename. The working copy can be edited and checked in.
Checking in the working copy
Update the working copy Alfresco_CIGNEX (Working Copy).docx file. Updating the document is explained earlier in this article in the Upload updated binary file section. After you update the working copy, you can check in by clicking the Check In button.
Once you click on the Check In action, you will see the Check In dialog window. If you have only made minor changes to the file, you will check the Minor Change checkbox. By selecting the Minor Change checkbox, you will be able to increment only the number after the decimal (from 1.1 to 1.2); otherwise, you will increment the number before the decimal (from 1.0 to 2.0). Type your notes in Version Notes, which is a very important documentation to help understand the differences between various versions of the document.
There will no longer be a working copy of the document. Notice the latest modification timestamp of the original document. If you click on the View Details action and scroll down to Version History, you will see that the history has been updated, as shown in the following screenshot:
At the time of writing this book, reverting back to older versions of the content is not supported in the user interface. The work around is to download the desired older version and upload it again as the current version. The "revert" feature is available in the Alfresco Java API for programmatically reverting to the version of the content needed. If you are a programmer, please refer Alfresco's API called VersionService and revert method for more details.
For a checked-out content, the version is updated when content is checked in. Version number is incremented from the content version number that was checked out.
Undo Check Out to unlock a document
Now that you can use library services, you might still have questions such as, how long does a file remain checked-out? Can we see who checked it out and when? And who can cancel the lock?
A document remains in the checked-out state (locked) forever, until the working copy is checked in or somebody cancels the checked-out status from the working copy. To cancel check out, locate the working copy of the document and click on the Cancel Editing button. This action will delete the working copy and release the lock, as if the checkout had not happened.
The owner of the document, or a coordinator, or an administrator can unlock the document by executing the Cancel Editing action on the working copy. Other users, who have read access to the space, can still see the working copy of the document but they can never edit or check in the document.
You can enable auditing on Alfresco repository, and find out the audit trail information, such as who locked the content and when.
Categorization helps information to be classified in a number of ways. Various technologies use various terminologies, such as hierarchies, taxonomies, and ontology for the same concept.
In Alfresco, all of the content can be linked to one or more categories. Categories are defined and managed by administrators only. Categories can have subcategories and there is no limitation on the number of categories that can be defined, or depth of hierarchy. Categorization aids in searching, and the advanced search form in Alfresco allows you to search the content filtered by various categories.
Follow these steps to create two new categories called Technology and Products for your example application:
- In any space, click on the Administration Console icon in the top toolbar. The Administration Console pane appears.
- Click on the Category Management link. The Category Management pane appears. Notice the existing categories, such as Software Document Classification , Regions , and Languages .
- In the header, click on the Add Category link to create a new category.
- As an example, create a new category called Open-Source Products . Under that new category, create few subcategories, such as Alfresco and Plone
You can add additional categories and subcategories, and can edit the existing categories.
Adding categories to content
In order to categorize content, you need to have either an administrator, or an editor, or a collaborator, or a coordinator role, on that content.
To enable categorization for an individual content item (say
Alfresco_CIGNEX.docx), go to the View Details page, and click on the Allow Categorization link. Click on the Change Category icon to apply categorization to the content.
You will see the Modify categories dialog, as shown in the screenshot on the next page. Apply two different categories to the content. Click on the OK button to confirm. You will notice these two categories associated with your document in the View Details page:
Searching content by category
Categorization helps to narrow down a search or filter the search results. From the earlier example, we will search for the marketing documents, with a text called Content , and categorized under Open Source Products | Alfresco .
Click on the Advanced Search link from the drop-down list of the search menu. From the form options, click on the Show me results in the categories pane. Click on the Click here to select a category link. Select Open Source Products | Alfresco as an option and provide text in the Look For textbox and then click on the Search button.
Managing multilingual content
You can make content multilingual by selecting the Make Multilingual action under the View Details page. You need to select the base language (Pivot Translation ) and optionally add other translations.
Once multilingual support is added to a file, you will notice the Multilingual Content Info window in View Details page. You can change the properties, such as Pivot Translation by clicking on the Edit button. You can add translations with file and without a file. In either case, a new content will be created with the selected language. Clicking on the Add Translation link will open up the dialog box, enabling you to upload a file with the selected language translation.
Versions of multilingual content
At the time of writing this book, Alfresco's multilingual support is very basic. It is equivalent to associating (and thus grouping) the documents. All the latest versions of the documents are associated as one logical document group, as shown in the next screenshot. The latest version of the English document could be 1.0, the German translated version could be 1.1, whereas the Japanese version could be 2.0.
When you click on the Manage Multilingual Content link in the View Details page of the base (English) version of the document, you will notice the following screen:
Multilingual files are associated to each other, and for all other purposes they are treated as separate files within Alfresco. They can have different versions, different metadata, different categorization, and different workflow processes. All of these translated files will show up in the Search result, if they match the search criteria.
Deleting multilingual content
You can't delete the base file if it has translated files available. In our example shown above, the content with base language English (with the icon EN ) has two translations available for German (with the icon DE ) and Japanese (with the icon JA ). You will notice that you cannot delete the base English version. However, you can delete the translated versions. If a particular content does not have translated content, then it can be deleted.
Using network drives to manage content
Out-of-the-box installation comes with web client, where you can connect to the Alfresco repository through a web-based application. Apart from a web client, Alfresco supports various client applications to access repository content using protocols, such as FTP, WebDAV, and CIFS.
Microsoft's Server Message Block (SMB ), is the standard way for computer users to share files across intranets and the Internet. CIFS enables collaboration on the Internet by defining a remote file-access protocol that is compatible with the way applications already share data on local disks and network file servers.
CIFS supports the usual set of file operations, such as open, close, read, write, and seek. CIFS also supports file and record lock and unlocking. CIFS allows multiple clients to access and update the same file while preventing conflicts by providing file sharing and file locking. CIFS servers support both anonymous transfers and secure, authenticated access to named files.
Using CIFS, you can map an existing Alfresco space as your local filesystem folder. You will be able to bulk upload files to server and edit them directly using your desktop applications.
Mapping the drive
As an example, you will now map one of your spaces, say Intranet | Marketing Communications , as your local folder:
To map a space in Windows Explorer as a network drive, follow these steps:
- In Windows Explorer, click on the Tools | Map Network Drive link. The Map Network Drive dialog appears, as shown in the preceding screenshot.
- Select an unused drive letter (say M for the Marketing Communications space).
- In the Folder textbox, type
\\AlfrescoServerNameA\Alfresco\Intranet\Marketing Communications. Please note that you have to append capital letter "A" at the end of your machine name. The syntax is
- Click Finish . As the space is secured, the system will prompt for your authentication.
- Type your Alfresco username and password when prompted.
Another easy way of mapping your space as a network folder in your local filesystem is by using a web client. Go to the space and click on the Open Network Folder icon, as shown in the following screenshot:
Once a space is mapped as a network folder, you can browse the space as if it is your local folder. You can drag and drop files into Alfresco folders.
FTP is useful to transfer files from your local filesystem to the remote server. Using any FTP client, you can connect to Alfresco server as if it were a FTP site and upload and retrieve files.
If you are connecting to a space, all of the rules are applied and all of the permissions are enforced. If versioning is enabled, then content will be versioned regardless of how it is updated.
Execute the following commands to use FTP via the Windows DOS prompt to upload a file from the local hard disk to your Intranet | Marketing Communications | Product XYZ Launch | 02_Drafts space:
> ftp localhost
Login as: admin/admin
> cd Alfresco
> cd Intranet
> cd Marketing*
> cd Product*
> cd 02_Drafts
> put c:\press2A.txt
Verify that the text file is now in the Alfresco repository. Similarly, you can use any FTP client application to connect to the Alfresco repository and access files.
WebDAV is primarily designed for editing and managing files on remote Web servers in a structured way. For example, an application such as Adobe Photoshop can directly open a file in the Alfresco content repository and edit it. This gives you the flexibility of using your own favorite editor to edit the content on the Alfresco server.
If you are connecting to a space, all of the rules are applied and all of the permissions are enforced. If versioning is enabled, then content will be versioned regardless of how it is updated.
If you have a WebDAV client, then you can access the Alfresco server by using the http://<Your_Alfresco_Server_URL_Port>/alfresco/webdav/ URL
You can only edit the content and you can't edit the metadata of the content using CIFS, FTP, or WebDAV access.
Recovering deleted content
When you delete an item (content or space) in Alfresco, the item will not be deleted from the server; but is moved to a temporary store called Archive Space Store . This gives you a chance to recover the items that were deleted earlier. Deleted item will be in the temporary store forever, until you decide to either recover or purge the deleted item. This feature is available to administrators through the Manage Deleted Items action.
To test these features, log in as a user or administrator, create a couple of dummy files in any space and delete them. Click on the User Profile Icon () on the top menu item and then click on Manage Deleted Items . The Manage Deleted Items pane appears.
You can list all of the deleted content by clicking on the Show All button. You can also search the deleted items by name, content, date, or person deleted, using search options provided. Select the item that you deleted earlier and click on the Recover Listed Items icon. You will notice that the item has been recovered to the original space.
When an item is recovered, it will be removed from the archive space store and moved to the original space, from where it was deleted.
Purged items are deleted forever and cannot be recovered. Since the deleted items will be in the temporary store forever, it is best practice to purge them periodically. It is also recommended to take regular backups of your data.
Resources for Article :
- Getting Started with the Alfresco Records Management Module [Article]
- Tips and Tricks for using Alfresco 3 Business Solutions [Article]
- Alfresco 3 Business Solutions: Types of E-mail Integration [Article]
eBook Price: $35.99
Book Price: $59.99
About the Author :
Amita Bhandari is a senior consultant at CIGNEX. As a senior developer, she has rolled out numerous Alfresco deployments world-wide. She has extensive experience in implementing Enterprise Web Applications using J2EE technologies such as JSP, Servlets, Spring, Hibernate, Web Services, Web Scripts and MVC Frameworks.
She has worked with clients in media and gaming, healthcare and e-governance. She trained many students in Java and advanced Java technologies. She holds a Masters in Computer Applications from Rajasthan University, India.
Jayesh Prajapati is a Senior Consultant at CIGNEX Datamatics. He has extensive experience in implementing Enterprise Web Applications using J2EE technologies. For the past six years, at CIGNEX Datamatics, he has rolled out numerous Alfresco deployments worldwide in the areas of Document and Web Content Management. He has worked on Performance-tuning projects where Alfresco was deployed in clustered and load balanced environments. He has also implemented Integrated Content Management Portal (ICMP) where Alfresco WCM is used as the central repository and Liferay as Portal. He has also implemented Alfresco WCM to serve Flex-based portals. He has worked with clients in the travel and hospitality, healthcare, academic, and high-tech domains. He has been involved in providing training on Alfresco Document Management.
Jayesh holds an MS in Computer Applications and Information technologies from the North Gujarat University, India
As a co-founder and Chief Technology Officer at CIGNEX Datamatics, Munwar Shariff brings over 20 years of industry experience and proven technical leadership. He oversees the enterprise architecture solution team and provides strategic planning to achieve business goals by identifying and prioritizing technology based services and solutions. Defining initiatives and setting timetables for the evaluation, development, and deployment of pioneering technologies are his areas of expertise.
Munwar is an entrepreneur, open source technologist, and author of four technical books – Plone Live, Implementing Alfresco, Alfresco3 WCM, and Alfresco3 ECM. He contributes to the open source community by journaling submissions on open source CMS and has been a featured speaker at AIIM USA, JBoss World, DAM Conference, Plone Conference, Linux World, Gilbane, CTC, Yahoo OSCMS, Saudi Government, and CA World. Munwar has served on board at the Plone Foundation and is currently a board member at CIGNEX Datamatics.
Pallika Majmudar is a consultant at CIGNEX Technologies. She is very experienced in Java/J2EE domain including frameworks such as Struts, Spring, Hibernate, Web services, and Web scripts.
She has worked on various CMS applications for customers in United States, Hong Kong, and India. She has implemented Alfresco for clients across verticals like Media, Healthcare, Hi-Tech, and Communications. Pallika earned her Masters in Computer Application degree from Gujarat University, India.
Rajesh R Avatani leads the Alfresco Practice at CIGNEX Datamatics. He has earned his Masters in Computer Application from Basaveshwar Engineering College, Bagalkot, India
He is well versed with all the phases of the Software Development Lifecycle and has strong hands-on experience in leading and implementing Java, J2EE, Object Oriented Architecture based projects, and Alfresco-based ECM Solutions. He has around 5 years of experience in Alfresco. He has mainly worked on Alfresco integration projects as a Technical Architect and Project Manager, in other terms, as a Techno Manager.
He has worked on projects where Alfresco was integrated with Liferay, Drupal, and other web applications. He has also implemented the Contract Lifecycle Management System developed on Alfresco. He has successfully implemented Alfresco-based ECM solutions for various industries into healthcare, finance, insurance, banking, education, and so on.
Snehal Shah has extensive experience in implementing Enterprise Web Applications using J2EE technologies. At CIGNEX Datamatics, he has rolled out numerous Alfresco deployments worldwide in the areas of Document, Web Content Management, and Share. He has also worked on applications based on Liferay and Moodle products. Prior to CIGNEX, he has worked on various J2EE-based solutions using cutting-edge technologies.
He has worked with clients in the education, legal, and marketing domain across the world. He has worked on defining the architecture for various projects that involve multiple product integrations. In his previous organizations, he was involved in deciding technology paths of the organization and involved in various internal trainings in the technical part.
He holds a Bachelor in Computer Engineering from Deemed University, DDIT, India. He has also worked as a technical reviewer for the books titled Alfresco 3 Cookbook and Alfresco Share.
Vandana Pal is a Senior Consultant at CIGNEX Datamatics. She has more than 4 years of experience in the IT industry. She has an extensive experience in implementing Enterprise Content Management (ECM), Web Content Management, and System Integration. Vandana holds a Bachelor of Engineering degree in Information Technology from the Gujarat University.
She started her career with open source products such as Alfresco and Liferay. She has hands-on experience in implementing Alfresco-based solutions for various domains such as media, healthcare, and finance. She has extensively explored and implemented Complex workflow, UI customization, web scripts, and performance tuning in Alfresco. She has provided in-house training for Alfresco. She also has an experience of teaching Engineering students for a few months.
Vinita Choudhary is a senior consultant at CIGNEX. She has extensive experience in working in a variety of environments with cross-functional, multi-cultural teams as a business analyst and has provided feedback on usability and functional gaps in process flows and proposed solutions.
She has re-organized existing repository of documentation, written guidelines for document creation, filing and change control, wrote reference and training material for software developers and published the same. She is involved in providing presales support to the sales team and has worked on process streamlining for the company and various documentation aspects. Vinita holds a Masters in Computer Applications degree from Gujarat University, India.