Wednesday, March 10, 2010

Tip: Repository Browsing in Alfresco Share 3.2r

There's a cool but not-well-publicized feature of the Alfresco 3.2r release (February 16) in Alfresco Share -- general browsing of the entire Alfresco Repository from the Share interface.  Paul Hampton, director of Product Marketing at Alfresco, briefly showed the feature in a webinar and later wrote a blog entry describing it.

Since Alfresco is in the process of migrating functionality from their 'classic' explorer client application to Share, it makes sense that general repository browsing be migrated.  Until this release, Share was only able to browse files in the document libraries of Share sites.

The feature is turned off by default, but it can be enabled by changing a boolean flag in the configuration file:
...\tomcat\shared\classes\alfresco\web-extension\share-config-custom.xml

This section of the XML configuration needs to be changed:


      
      true

The 'visible' flag needs to be set to true to be enabled.

After making that change and restarting the server, you'll see a link to the repository on your Share home page along the top links to the right of the Share logo.



After clicking on the Repository link, you'll then be able to browse the standard Alfresco repository.  (You may need to F5/refresh your browser cache to see it.)  You can upload files, create folders and create new content.

Wednesday, March 3, 2010

Tip: Setting Alfresco Global Properties

Configuration of Alfresco can be a bit challenging.  It takes some time to get a feel for which file needs to be modified and what directory that file is in.  Part of the reason for the number of files has to do with the fact that Alfresco is based on Spring, and Alfresco has adopted Spring configuration methodology.

In Alfresco 3.2 some of the complexity around finding where to make a configuration change has been simplified.  Alfresco introduces the concept of the alfresco-globals.properties file.  This new file tries to centralize as much as possible basic Alfresco configuration parameters  and settings.

alfresco-globals is basically a global override file.  The goals was to try to simplify common configuration settings into a single file.  Rather than centralizing everything into one file, which would be quite large and unwieldy, parameters defined in this file override parameters defined elsewhere in the standard configuration files used up until now.

After a full Windows install of an Alfresco 3.2+ system, you'll find this file in your tomcat\shared\classes directory. It will contain some of the settings selected during the installation process, like database connection information.  If the file isn't already there, you can find a template for it here:
   ..../tomcat/webapps/alfresco/WEB-INF/classes/alfresco-global.properties.sample

Some of the most common settings that are configured in Alfresco that can now be set/overridden by values in  alfresco-global file include parameters from these files:
..../tomcat/webapps/alfresco/WEB-INF/classes/alfresco/repository.properties
..../tomcat/webapps/alfresco/WEB-INF/classes/alfresco/hibernate-cfg.properties


Override values for Alfresco subsystems are also set in the alfresco-global.properties file.

Wednesday, February 24, 2010

Improved Alfresco Administration

Alfresco 3.2r, just released on February 15th, comes along with some great new tools for administration. Alfresco's Paul Hampton described and demo-ed two categories of new features in a Alfresco recorded webcast:

  1. New Subsystems
  2. Storage Policies

Subsystems are mini-servers that run embedded within the overall Alfresco system.  They are independent processes that can be brought up and down.  This design lets an administrator of the system change a single configuration without having to bring down the entire Alfresco system.  The advantages are reliability and availability.

Subsystems can be configured via any JMX client [Enterprise Alfresco only].  In the demonstration, Paul used JConsole, a common JMX console used by the JDK.  From the console, the subsystems can be stopped and started, and parameters of the individual subsystems can then be reconfigured.

Starting in Alfresco 3.2 the file alfresco-global.properties is a centralized place for system configurations -- unless you are using JMX.  If you are using JMX, the alfresco-global.properties file values are used until you configure new subsystem values via JMX.  JMX changes get stored in the database, and thereafter, any time you start your system, the database values will override those of the properties file.  An advantage of this approach is that system changes are stored in the database and easily propagated to all servers in a cluster.  But the properties file is not updated and may lead to confusion about what system values  are currently being used.

Examples of Alfresco Subsystems include:

  • Authentication
  • Synchronization
  • File Servers
  • Third party
  • IMAP
  • WCM Development Receiver
  • SysAdmin
  • OpenOffice Transformations

Paul gives a good detailed example in the demonstration of how he could stop the OpenOffice Transformation  subsystem, configure a second one, and then start up two OpenOffice Transformation subsystems.

Storage Policies were covered in the second portion of the webcast.  (There is also an Alfresco brief description of Storage Policies here.)  Storage policies can be part of an Information Lifecycle Management (ILM) strategy.  They let the administrator determine which content should be stored where.



Paul shows in the webcast an example where he automatically stores content to a particular location based on content type -- or whatever other criteria you might have.  He accomplishes this by setting up rules that get run when the content is checked in.  Images, videos, and PDFs, for example, could all be stored in separate directories or volumes.