You are here

Smart Folders technical FAQs

If you have any technical problems with Smart Folders, try these suggestions to resolve your issue.

How do I enable Smart Folders?

Smart Folders can be enabled (and disabled) by your system administrator in the alfresco-global.properties file:
smart.folders.enabled=true

back to top

How does Smart Folders affect Alfresco if the function is enabled, but not used?

Smart Folders is part of the standard Alfresco repository, and there might be unexpected interactions if Smart Folders are enabled but not used. The most important impact is on performance. Alfresco performance might degrade based on the complexity and the number of Smart Folders used. See Best practices when using Smart Folders for more information about best practices with Smart Folders, and Type-based, System, and Custom Smart Folders for information about Type-based, System, and Custom Smart Folders.

back to top

Are there best practices to avoid performance problems?

Yes there are. See Best practices when using Smart Folders for more information.

back to top

Where can I find technical documentation?

Use the Smart Folder tutorial, Smart Folders tutorial, to set up a working Smart Folder configuration. General configuration information is here: Configuring Smart Folders.

back to top

Which components or subsystems do Smart Folders provide?

Smart Folders introduce a private AspectJ-based, non-disruptive extension point implementation mechanism called TraitExtender.

The Smart Folders implementation extension bundle, which is a set of extensions that act as service interceptors for several services, is classified as a module because it can be added to and removed from the Alfresco repository. They are not publicly exposed currently.

back to top

Which services do Smart Folders extend?

These services are extended:
  • DbNodeServiceImpl basic node handling
  • FileFolderServiceImpl basic file and folder modelling
  • PreferenceServiceImpl node based preferences information handling (for example; favourites)
  • RatingServiceImpl node based ratings
  • LockServiceImpl node locking
  • PermissionServiceImpl node permissions handling
  • CheckOutCheckInServiceImpl node check out / check in
  • Version2ServiceImpl node versioning
The LockableAspectInterceptor Spring interceptor is also extended.

back to top

How can I extend Smart Folders? Which interfaces, APIs, and extension points exist?

There are currently no publicly exposed extension points for Smart Folders.

back to top

As a developer, I want to create a custom application. How can I use Smart Folders in my code?

Use standard Alfresco APIs. All custom uses of nodes, files, and folders apply.

back to top

As a developer, creating my own custom application (separate from the Share evaluators), how do I distinguish between a Smart Folder and an object that is displayed in a Smart Folder?

Use this guidance to differentiate between a Smart Folder and an object that is displayed in a Smart Folder:

  • Root folder, with Smart Folder sub folders: This is a standard folder and is referenced using normal NodeRefs. The only difference is the sub-folder content.
  • Smart Folder structure, as defined by a Smart Folder Template: This structure has the smf:smart aspect, and is referenced using a special NodeRef. Repository clients must not use the NodeRef format to detect these nodes.
  • Smart Folder structure, as defined by a query: This structure has the smf:smartFolderChild aspect, and is referenced using a special NodeRef. Repository clients must not use the NodeRef format to detect these nodes.

back to top

I have created a new Share module. How can I enable Share actions for Smart Folders?

Any new Share action, by default, is not enabled, because not all actions are supported with Smart Folders (for example, data can't be persisted with a Smart Folder).

Ensure that you conduct adequate testing before enabling an action for Smart Folders.

To enable the new action, add an evaluator in the appropriate action group definition in your module, or add it to the Tomcat shared/classes/alfresco/web-extension/smartfolders-amp-actions-config.xml file.

back to top

Which Share actions are enabled as standard for Smart Folders?

Smart Folders have a limited set of actions:
  • Add/ Create: You can add files to a Smart Folder. The file is put into a physical folder, as specified by the filing rule.
  • Update: You can update files in a Smart Folder. Updating a property might result in a file being removed from the current Smart Folder (because it no longer meets the query criteria).
  • Delete, Edit Properties, Unzip To, Sync, Locate To, Move, and Copy actions for files are not supported.
The Smart Folder itself can't be edited in Alfresco, except through the Smart Folder Template. For more information about Smart Folder Templates, see Applying a Smart Folder Template.

back to top

Are Smart Folders supported in a multi-tenant production environment?

No, Smart Folders are not supported in a multi-tenant production environment.

back to top

Can I use multi-value properties with Smart Folders?

Properties that can have multiple values are supported in a query. However, you can't upload new content and set a value for a multi-value property.

back to top

What is the Data Dictionary/Smart Folder Downloads folder used for?

The Data Dictionary/Smart Folder Downloads folder is used only when you use the Download as Zip function in Share, for a folder that contains Smart Folders. Download as Zip creates a temporary file in the Smart Folder Downloads folder that contains information about the Smart Folder contents.

back to top