Tuesday, April 6, 2010

Alfresco Records Management Demonstration

April has traditionally been celebrated as Records and Information Management Month (RIMM). So no better time than to give a look at Alfresco's recently released Records Management module. Alfresco Records Management is certified for the DoD 5015.2 Standard. Below is a video with an overview of the RM module as used in Alfresco Share.




Note: A high-resolution (1504x738) version of this video can be viewed here.
A slightly bigger version of the video (640x379) can be seen here.
A complete transcript of this video can be downloaded here.



More Information

  • A 20-page White Paper describing Records Management Best Practices can be downloaded here.
  • The Alfresco Share Records Management Data Sheet can be downloaded here.
  • The Formtek Web Site.
  • The Alfresco Web Site.

Thursday, March 25, 2010

Reviving Alfresco Share Thumbnail and Avatar Images

One great thing about Alfresco Share is (was) the ability to automatically create thumbnails for documents on upload.  Being able to visually browse your documents before opening them is a feature that many people like.  It can help you locate the document more quickly and helps to distinguish document contents in the case where documents are similarly named.

The problem is that on Windows in Alfresco Enterprise 3.2r, this feature broke.  On upload of a document, Alfresco tries to generate the thumbnail for the image content, but fails and instead creates a zero-byte thumbnail file.

You'll see something like this.

The default picture of a pair of gears displays whenever Share doesn't have a valid thumbnail file to display.

Searching in the forums for a possible solution, I came across one posted by Nicola Prando.  The bug and solution are also posted as ALF-1978.  Thanks Nicola!

The trick to fix this is to define a base directory for ImageMagick to use on Windows.  You can find the following file:
C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\subsystems\thirdparty\default\imagemagick-transform-context.xml

You need to add the following lines to the property processProperties for the bean transformer.ImageMagick.Command:

<entry key="SYSTEMROOT"> 
       <value>C:/WINDOWS</value> 
    </entry>

But it isn't good practice to modify a file in the core Alfresco directory.  Instead define a new imagemagick-transform-context.xml file and place here:
C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\extension\imagemagick-transform-context.xml

The contents of the file with this change looks like:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>

   <bean id="transformer.worker.ImageMagick" class="org.alfresco.repo.content.transform.magick.ImageMagickContentTransformerWorker">
      <property name="mimetypeService">
         <ref bean="mimetypeService" />
      </property>
      <property name="executer">
         <bean name="transformer.ImageMagick.Command" class="org.alfresco.util.exec.RuntimeExec">
            <property name="commandsAndArguments">
               <map>
                  <entry key=".*">
                     <list>
                        <value>${img.exe}</value>
                        <value>${source}</value>
                        <value>SPLIT:${options}</value>
                        <value>${target}</value>
                     </list>
                  </entry>
               </map>
            </property>
            <property name="processProperties"> 
               <map>
                  <entry key="MAGICK_HOME">
                     <value>${img.root}</value>
                  </entry>
                  <entry key="DYLD_LIBRARY_PATH">
                     <value>${img.dyn}</value>
                  </entry>
                  <entry key="LD_LIBRARY_PATH">
                     <value>${img.dyn}</value>
                  </entry>
    <entry key="SYSTEMROOT"> 
                     <value>C:/WINDOWS</value> 
                  </entry>
               </map>
            </property>
            <property name="defaultProperties">
               <props>
                  <prop key="options"></prop>
               </props>
            </property>
         </bean>
      </property>
      <property name="checkCommand">
         <bean name="transformer.ImageMagick.CheckCommand" class="org.alfresco.util.exec.RuntimeExec">
            <property name="commandsAndArguments">
               <map>
                  <entry key=".*">
                     <list>
                        <value>${img.exe}</value>
                        <value>-version</value>
                     </list>
                  </entry>
               </map>
            </property>
         </bean>
      </property>
   </bean>

</beans>

After doing that, thumbnails will get correctly created.

Another tip, if you should ever need to debug Alfresco thumbnail creation, add the following lines to your log4j file to get debug information:
C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\log4j.properties

log4j.logger.org.alfresco.repo.content.transform=debug
log4j.logger.org.alfresco.repo.thumbnail.ThumbnailServiceImpl=debug

Friday, March 19, 2010

Alfresco 3.3 in the Making

About a month has passed since the Alfresco Enterprise 3.2r release.  The Alfresco development team is now in heads-down development, working on release 3.3.  The roadmap for the 3.3 release is posted on the Alfresco wiki and the next upcoming release, version 3.3, is scheduled for Q2 2010.

Out of curiosity, I thought that I'd check in with the latest Alfresco SVN HEAD source code to see some of the things that are brewing for the 3.3 release.  There are at least three areas that are showing interesting development, and I'll mention them here.

I did run across some problems, but then this code is far from a release date of a few months from now.

Themes for Share

The Admin Console of Share has been enhanced to include a new Tool plugin called "Application".  It looks like a place where overall Share configuration will be done via the UI.  The only thing there right now is the ability to select the Alfresco Share Theme.  Have a look at the "High Contrast Theme":



And here is what the Dashboard looks like after the "Yellow Theme" is applied:



Space Rules in Share

The Alfresco 3.3 Roadmap mentions enhancements in Share around Space Rules:

      Rule and Action Management
          
Linked Rules allowing rules to reused across multiple space
           - Compensating actions triggered on main action failure


Now when looking at the Actions available for a Folder/Space within Share, you see the following options.  Here I compare how the Folder Actions options have changed.

Folder Actions in 3.2r
Folder Actions in 3.3 pre-release

After clicking on "Manage Rules", you'll see the following:


On click of "Create Rule" you get a single screen for defining the new rule.  Unlike the wizard of Alfresco explorer, it's all in one place.  The "Link to Rule Set" will let you define libraries of reusable rules.


I think I prefer this consolidated view to defining a rule compared to the explorer wizard interface.  And it looks like a lot of the new rules functionality for Share is already working.  As shown above, I tried creating a rule on a space that adds the Taggable Aspect to incoming items to the folder.  Most of the UI is working pretty well.  The rule itself though didn't seem to get run when I later added content to the folder, and subsequent clicks on "Manage Rules" for the folder threw some errors.

I also experimented by creating a rule that would assign a simple workflow to incoming items of the folder.  I selected the Review and Approve Workflow with the option of moving the document to a different folder after approval.  I liked the interface for specifying the workflow, but this threw an error too.  It was interesting, although maybe not unexpected, that the error was one that shows the Surf logo.  That's the first time I've seen that in Share.


Alfresco Web Editor (AWE)

Alfresco's Ben Hagan has written a Blog entry explaining how to build and test the new Alfresco Web Editor (AWE).  This is the Web Editor that will be used in future releases of Alfresco WCM.

It all worked for me as described in Ben's blog, and it looks like it has good potential.  It looks a bit early though to start building anything out with it just yet.  But to already have something up and running is a good sign that there will probably be rapid progress on this front.