cancel
Showing results for 
Search instead for 
Did you mean: 

Alfresco and OPEN SEARCH engine integration

roby71
Champ in-the-making
Champ in-the-making
Hi,

I'm using Alfresco ECM and I would like to extend its search functionalities
with open-search features (see http://www.opensearch.org).

Further, I have install in my network more than one alfresco server with own data and meta-data and now I would like submit a search query from an alfresco's web-client to over all alfresco's server repository and not only inside a repository from the query comes.

Anyone could tell me if is it possible do it? and if yes could tell me a solution outline and/or any advices?

thanks,
regards,
7 REPLIES 7

pjongen
Champ in-the-making
Champ in-the-making
Yes, this is possible as we support OpenSearch
Please search our Wiki for opensearch at http://wiki.alfresco.com/

In addition I suggest to look in our documentation repository where we have some material (presentations, sample files) how to configure OpenSearch with Alfresco. Please follow the Documentation link form the front page of our website.

theorbix
Confirmed Champ
Confirmed Champ
Yes, this is possible as we support OpenSearch
Please search our Wiki for opensearch at http://wiki.alfresco.com/

In addition I suggest to look in our documentation repository where we have some material (presentations, sample files) how to configure OpenSearch with Alfresco. Please follow the Documentation link form the front page of our website.

Thanks Pjongen for your reply.

We have reviewed (I work in team with Roby71) the Wiki, but there is something a bit unclear… does the OpenSearch implementation of Alfresco implement searching on a set of federated Alfresco repositories using attributes?

Let me explain… imagine that we have three Alfresco systems on three different servers (A,B,C).

Each of the systems is used to catalog customer information, so the repository has been customized with a set of custom attributes (like Customer_ID, Customer_Name) to classify properly documents on each server.

Is there a way to configure the OpenSearch interface in order to search all documents, on servers A,B,C, with a given Customer_Id (or a given Customer_Name, if that matters)?

As far as I've seen, the Alfresco Web client only exposes the possibility of performing a federated search on content (full-text), not on properties.

Is it just a UI limitation (as I would expect), or a limit in the OpenSearch protocol?

And how to work around such an UI limitation? Is it necessary to customize the Web Client code, or it is just enough to reconfigure something?

davidc
Star Contributor
Star Contributor
The keyword search only supports full text (and name) searching.  Arbitrary attributes are not supported.  It's possible to change the query it constructs by modifying keywordsearch.get.query_.ftl

theorbix
Confirmed Champ
Confirmed Champ
The keyword search only supports full text (and name) searching.  Arbitrary attributes are not supported.  It's possible to change the query it constructs by modifying keywordsearch.get.query_.ftl

David, thanks for the reply.

So it is not a limit in the OpenSearch "protocol", but just in the default configuration, right?

So to customize the system and perform a query on one or more custom fields, it is enough to customize this file?

Where is the file? I did a search for keyword*.ftl in my \Alfresco folder and subfolders, and only found (under C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\templates\api):

- KeywordSearch_query.ftl
- KeywordSearch_view_rss.ftl
- KeywordSearch_view_html.ftl
- KeywordSearch_view_atom.ftl

The "keywordsearch.get.query_.ftl" seems to be missing… am I looking for the wrong thing?

davidc
Star Contributor
Star Contributor
Sorry, I was in v2.1 mode.  In v2.0, you can modify  KeywordSearch_query.ftl

It's not really a limit of the OpenSearch protocol, in that you can provide arbitrary query parameters, however, in practise, to ensure the widest client compatibility, query criteria is generally restricted to keywords.  How a server then translates those keywords to a query is up to the server.

You can either add customer id into the keyword search query or add an explicit customer id parameter, but then you need to change our open search ui.

theorbix
Confirmed Champ
Confirmed Champ
Hello David,

You were mentioning 2.1… are there any specific enhancements introduced in 2.1 regarding support for OpenSearch?

Just to know… I haven't downloaed and tried the 2.1 version yet.

davidc
Star Contributor
Star Contributor
Not specifically to OpenSearch, except that the OpenSearch URLs are now hosted as Web Scripts (http://wiki.alfresco.com/wiki/Web_Scripts), which means there's a slightly cleaner approach to customising them.