Archive for the ‘Alfresco’ Category


When we create a site in alfresco share, and start inviting users to the site, the following error will be displayed “0 invites sent, 1 failure”.  This message leaves us to a bit of frustration, after creating sites, users, and when thinking of inviting users to the sites. This article gives the resolution for such a type of error message.

This error occurs because, the Outbound E-mail Configuration has not been set in alfresco-global.properties file. The quick turnaround for this issue would be to add a few lines of code to the alfresco-global.properties file, and add another file outboundSMTP-context.xml, if it doesn’t already exist.

Add the following to alfresco-global.properties file:

//Add to the end of alfresco-global.properties file
# Email settings mail.host=smtp.1and1.com mail.port=465 mail.protocol=smtps mail.username=XXX mail.password=XXX mail.encoding=UTF-8    mail.smtps.auth=true mail.smtps.starttls.enable=true
//END

If a file named outboundSMTP-context.xml doesn’t exist in C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\subsystems\email\OutboundSMTP folder, then add the following file and name it as outboundSMTP-context.xml

//  <bean id="mailService">          <property name="host">              <value>${mail.host}</value>          </property>          <property name="port">             <value>${mail.port}</value>         </property>       <property name="protocol">         <value>${mail.protocol}</value>      </property>          <property name="username">              <value>${mail.username}</value>           </property>         <property name="password">              <value>${mail.password}</value>         </property>          <property name="defaultEncoding">             <value>${mail.encoding}</value>         </property>       <property name="javaMailProperties">          <props>               <prop key="mail.smtps.auth">${mail.smtps.auth}</prop>             <prop key="mail.smtps.starttls.enable">${mail.smtps.starttls.enable}</prop>          <prop key="mail.smtp.socketFactory.port">${mail.smtp.socketFactory.port}</prop>          <prop key="mail.smtp.socketFactory.class">${mail.smtp.socketFactory.class}</prop>           <prop key="mail.smtp.socketFactory.fallback">${mail.smtp.socketFactory.fallback}</prop>          </props>      </property>     </bean>

Now, restart alfresco and try inviting users. After inviting the users in share, it should display the following message “1 invites sent, 0 failure”.

Advertisements

Alfresco has recently released the Alfresco 4.0 version, and also came up with nightly build packs such as 4.0.b, 4.0.c. This informative article will be used for those users who are planning to upgrade Alfresco 3.4 to 4.0.

Alfresco has released the newer version with POSTGRESQL database, where the older versions used MYSQL database. So, in the future releases, Alfresco might go with POSTGRESQL. Instead of using the POSTGRESQL, the users still have the facility of using existing database installed in their machines such as MySql, Oracle, etc.

This upgrade procedure uses existing MYSQL database (instead of migrating the whole database to POSTGRESQL), by pointing the Alfresco installation to the MYSQL database. The upgrade from 3.4 to the higher versions like 4.0b will not work. However, applying a patch before the upgrade will help in completing the process successfully.

The following is the procedure for upgrading from 3.4 to 4.0b.

  1. Stop the Alfresco server.
  2. Keep the MySql server up and running, as we are going to use this as the database for 4.0 installation.
  3. Download ALFRESCO COMMUNITY EDITION 4.0.a, and install in the machine which has 3.4 is installed.
  4. At the time of installation, give the following details:
    driver:      org.gjt.mm.mysql.Driver
    username: alfresco
    password: root
    name:      alfresco
    url:           jdbc:mysql://localhost:3306/alfresco
  5. After the installation is complete, Copy the contentstore and contentstore.deleted folders in alf_data folder of C:\Alfresco3.4 to C:\Alfresco4.0. 
  6. Now, do the following changes in alfresco-global.properties file.
    1. Make sure that the "dir.root" location is pointing to the correct location where the alf_data is stored. For example, dir.root=C:/Alfresco4.0/alf_data.
    2. Add the following line at the end of the file, to re-index the content.
               index.recovery.mode=FULL
    3. Add the following line at the end of the file, to set the indexing system as LUCENE. (Lucene is the indexing system for versions prior to 4.0)
               index.subsystem.name=lucene
    4. Comment out the following lines
    5.                ### Solr indexing ##
                     index.subsystem.name=lucene
                     dir.keystore=${dir.root}/keystore
                     solr.port.ssl=8444
    6. Save the file.
  7. Place the MySql connector in tomcat/lib folder.
  8. Download the patch-ALF-11029-context.xml file from here, and place the file into <tomcat>/shared/classes/alfresco/extension.
  9. Start the Alfresco instance.
  10. If any errors appear, check the log file.
  11. Once the restart is done properly, and after the lucene indexes folder is created in the alf_data folder, remove the above line index.recovery.mode=FULL in alfresco-global.properties, to ensure that the indexing will not be done every time when the alfresco server is restarted.
  12. If the application is not deployed properly, and if the log file says something related indexing MPEG extension, then search for the file patch-services-context.xml, and replace the value of reindex to false for mpeg.
  13. Restart the system.

Verify whether all the data (Sites, content, etc..) is accessible through Alfresco Explorer and Share or not.

Comments are welcome. Please share your views.


It’s common for a software product to undergo changes, made by its R & D team, and to have newer versions. Basing on the changes that have implemented, the releases might be MINOR or MAJOR. The same applies for Alfresco as well. Lets discuss the upgrade process of Alfresco (Both Minor and Major upgrades).

UPGRADING TO A MINOR RELEASE:

This type of upgrade will be between the minor releases such as 3.0 to 3.0.1, 3.3 to 3.4, etc. As there will be no new features, except some small patches and minor UI changes, we can do the upgrade by simply replacing the Web Application (WAR) file.

The WAR file can be downloaded, and replaced with the existing WAR files under <install_folder>\tomcat\webapps.

The following steps can be followed for upgrading the alfresco with minor release:

1. Download the latest release of Alfresco WAR file from the Alfresco website.

2. Stop the alfresco instance. (TOMCAT and MySQL).

3. Backup the data, and the customization files.

4. Delete the Alfresco folder in <install_folder>\tomcat\webapps.

5. Replace the existing Alfresco.war file in the above said location with the recently downloaded WAR file.

6. Restore the customizations (If any).

7. Start Alfresco

The Above said procedures will upgrade Alfresco to a new minor release.

UPGRADING TO A MAJOR RELEASE:

This type of upgrade will be between the Major releases such as 2.x to 3.x, 3.x to 4.x, etc. An Alfresco’s major release contains new features, performance enhancements, and bug fixes.

The following steps can be followed for upgrading the alfresco with minor release:

1. Download the complete Alfresco package and the Tomcat bundle for the Windows operating system.

2. Stop Alfresco.

3. Backup the data, and the customization files.

4. Perform a new installation in a different folder.

5. Copy the older Alfresco file content folder to the newer installation

(Copy C:\alfresco_old_version\alf_data folder to C:\alfresco_new_version\alf_data).

6. Create a new database table, and restore the relational database content from the older database.

7. Update the Alfresco configuration file (alfresco-global.properties) in the new installation, to point to this new database.

8. Restore the customization files in the new installation.

9. Start Alfresco in the new installation.

The Above said procedures will upgrade Alfresco to a new Major release. Test thoroughly to verify whether your old configurations are working fine with the new release or not.

More information regarding the upgrade process can be found here in the alfresco site.


This architecture is basically N-tier and delivers scalability without the need for massive hardware and software investment. It can also accommodate more users with the existing hardware resources.


Out of the box, Alfresco provides two Client Applications: Alfresco Explorer and Alfresco Share. Along with these two applications, Alfresco provides support for CIFS, FTP, WebDAV, Microsoft office, and so on.

The Repository Services layer consists of Alfresco components and services.

The Data Storage layer stores the data in a relational database and a file system. The content in Alfresco is stored in the database and the file system. There is a reason for using both database and a file system as content storage. Any content within Alfresco consists of two elements – the content itself and information about the content (metadata).


Though I have started blogging on Documentum and Fatwire, I just thought of even blogging on Alfresco, so that I will cover Document Management (Documentum), Web Experience Management (Fatwire), Web Content  Management (Alfresco).

Exactly what is ALFRESCO?

Alfresco is the leading Open Source alternative for traditional Enterprise Content Management (ECM) softwares such as Documentum, Filenet, Sharepoint, etc. It covers almost all the branches of ECM, viz Document Management, Collaboration, Records Management, Knowledge Management, Web Content Management, and Imaging.

It is available free of cost to download and implement. The installers are of two types: Community Edition and Enterprise Edition. The Community edition is also called as Labs Edition, and it is for internal use in the organization, like development activities, etc. Where as the Enterprise edition needs subscription from Alfresco vendors, to implement it in production.

The Alfresco Community Edition is designed for use by developers and technical enthusiasts in noncritical environments.

The Alfresco Enterprise Edition is a production-ready, stress-tested certified build that is supported by Alfresco Software Inc. It is a fully-supported Alfresco Product.

Alfresco is completely built on the following open standards:

  • Java
  • Java Content Repository API
  • Java Portlet Integration
  • Spring Framework
  • Hibernate ORM Persistence
  • Lucene Text Search Engine
  • WebDAV
  • Open Office

The latest version of Alfresco Community Edition can be downloaded from here.

Alfresco provides the following Clients for the ease of access to the users:

  • Alfresco Explorer
  • Alfresco Share

Alfresco Explorer is the main client which is used to implement Document Management, and implementation Web Content Management.

Alfresco Share is the client which is used for easy share of documents (Like a Portal), hence the heavy consumption of bandwidth for transferring the documents can be avoided, and thus helps in Collaboration. Apart from the share of documents, it also provides wiki, sites, etc.