Sunday, September 30, 2012

Alfresco Share in IE Compatibility Mode

Alfresco Share is not supported in Internet Explorer Compatibility Views - for both IE8 Compat View and IE9 Compat View.

There are number of UI bugs crops up in these mode of the browser, where as these works even in IE6 (and of course these works in IE7, IE8 onwards).

For example, one of the functionalities that does not work in Compat View is inserting image in a Wiki page.

Thursday, September 6, 2012

Alfresco Certified Engineer (ACE)

Proud moment for me to announce, became an Alfresco Certified Engineer yesterday. It had been a good experience to review where am I after working on Alfresco for last 4 years since Alfresco 2.1

For whom, who are targeting for the certification, here are a few useful information.


These are areas where you will be tested.

  • The Alfresco architecture and Repository
  • Understand, design and create content models and custom object types and aspects
  • Package and deploy Alfresco extensions and modules
  • Develop extensions for the Alfresco Explorer Web Client
  • Develop applications and Services using the Alfresco APIs (Foundation Services, JCR, Web Services)
  • Understand, define, customize and deploy Advance Workflows and Task Models
  • Understand how workflows interact with content
  • Connect to external applications using Web Services and protocols like SOAP & CMIS


There are 80 questions and you have 60 minutes to answer these. You need to secure at least 75% to become an ACE.


These are courses that will help you to pass the certification

  • Alfresco Fundamentals Course
  • Alfresco Web Scripts Course
  • the Alfresco Share Configuration Course
  • API Development Training Course
  • Alfresco Workflow Training Course
However, there is no formal requirement or pre-requisite for these courses or training.


Here is the categories and divisions of areas the questions are structured in the certification.

Architectural Core 39%
Repository Customization 22%
Web Scripting 13%
UI Customization 14%
Web Services 12%


Types of questions.

  • Multiple Choice — you need to select one option that best answers the question or completes a statement.
  • Multiple Responses — select more than one option that best answers the question or completes a statement. The text states how many options are correct, such as Choose two.
  • Sample Directions — read the statement or question. From the response options, select the option(s) that represent the most correct or best answer(s) given the information provided.
  • True/False — select either true or false as the answer.
  • Hotspot — you have to click on the correct area within an image. There is only one correct answer to this type of question.

Wednesday, August 22, 2012

Hiding the Header bar of Alfresco Share portlets in Liferay

Recently I was creating a demo for one of our customers who wanted to use Share portlets in Liferay.

Environment: Alfresco 4.0.2, Liferay 6.1.0

The Share portlets were easily deployed and working in Liferay. However, the default Share header bar was not expected inside the portlet.

It was presented like there are two navigation bars in your screen - one is from Liferay navigation, another of Share Header.

Thus I needed to get rid of the header, but since the same page as of Share application is used in the portlet container as well, I couldn't simply get rid of the header.

Added a few lines in site-webscripts/org/alfresco/header.get.html.ftl file.

<#assign portlet = context.attributes.portletHost!false>
<#if portlet>
    <#assign todo="we are not displaying header in portlet context. so nothing to do">
    <#-- The original Header generator FTL code goes here -->

It made the header bar not rendered while in Portlet, but the bar was as usual displayed in the Share application.

Friday, May 18, 2012

Organizations, in order to implement and adapt Alfresco as the ECM solution for the enterprise, need to follow certain plan and path.

Here we will elaborate what should be the specific plan of action for implementing Alfresco as the ECM solution in the business.


Identify Content Sources

In an organization, Content can be produced from a variety of sources.
For example Email transactions, Business Document productions, Images, Media file generation processes etc. Identification and listing of all these sources are quite essential.
There should be particular life cycle of each of these contents in the business, capturing these is also equally required.


Identify Actors

Similarly as there are number of different content sources possible in an organization, there can be variety of people and system actors involved in the production and maintenance of the content.
It is important to list down all such actors who contribute and participate in any phase of the content life cycle, along with their roles and actions they usually perform. This will also help to structure the permission model of the system.


Create Organization Taxonomy

This is probably the most important thing to do while establishing an ECM system. This involves
  1. Creating standard and fixed set of content Tags for the business
  2. Creating content categorization hierarchy and structure
  3. Creating user folksonomy strategy
  4. Create business specific content metadata, content types etc


Design Content Storage Structure

This is all about how different types of contents will be stored in the repository.
Answer the questions such as how many Sites will be created, what will be the default space (folder) hierarchy in each of the sites, what are the standard folder templates that can be re-used in the system etc.


Identify Document Management features

There are several standard document management features available in Alfresco ECM. For example
  • Versioning
  • Check-In, Check-Out
  • Comments
  • Manage Permissions
  • Manage Content Types, Metadata
  • Copy, Move, Edit
  • etc
The business needs to identify which all features they need and how to use them.


Structure Content Business Process

In an organization, contents are not created without any processes behind them.
Identifying and structuring these business processes and workflows are one of the most important aspects of an ECM implementation.
Write and spec these workflows in flow chart format that can help developers to easily implement them.


Collaboration around Contents

Alfresco is not only a simple document management system, it offers rich set of Web 2.0 collaboration features.
In today's social media driven world, users work in a very collaborative and connected environment. Alfresco offers all standard collaboration stuff which organizations must evaluate and implement accordingly.


Implement the above standard features

Deploy the above standard ECM use cases, run for a period, evaluate the performance and functionalities of the system.


Finally, identify and implement Customizations

At this point of time, the business owners should be pretty clear about what they need from Alfresco, as the ECM solution of the business. Now you can write down the business specific customizations, additional features they want. Implement those functionalities and you have a stable ECM solution in the business that will last long.

Tuesday, May 15, 2012

Setting up your Browser to use Alfresco Search

In Alfresco 4, OpenSearch is by default enabled.
You, however, need to configure this in your browser.

  • Open URL [http://localhost:8080/alfresco/service/api/search/engines] (replace localhost and 8080 with your alfresco server url). If OpenSearch is enabled, the following screen should come up.

  • While this page is open, click on the browser search engine drop down on the right hand side of the address bar.

  • Click on "Add Alfresco Keyword Search" - Alfresco OpenSearch search engine has now configured in your browser. 
  • Choose this search engine, type something in the search box, press enter. 
  • Alfresco would ask you for user credentials (if not logged in in Alfresco Explorer in this browser session). And as per your user credentials, the content search output will be displayed.


  • Alfresco takes care of the user permission and scope automatically. There is no need to do any enhancements for this. 
  • The search executes onto across repository (as per the permission), this is not limited to only ''Sites''. 
  • The output is paginated. Also, the name of the document enables you to download this.