Una de las principales propuestas de DSpace 1.7 fue la funcionalidad de búsquedas Discovery. Desarrollado, y cedido a la comunidad DSpace, por la empresa AtMire, el sistema de búsquedas por facetas (faceted search) es de indudable atractivo para las nuevas instalaciones y posiblemente imprescindible en instalaciones con un número de items elevado, pues las facilidades de búsqueda en esos entornos necesitan ser «reforzadas».
Faceted search, also called faceted navigation or faceted browsing, is a technique for accessing information organized according to a faceted classification system, allowing users to explore a collection of information by applying multiple filters (wikipedia)
Para poder manejar correctamente el nuevo sistema de búsquedas, se distribuye conjuntamente con la release, el tema Mirage (y ahora debe quedar claro que hablamos de XMLUI, no de JSPUI) como complemento visual de la funcionalidad Discovery.
En este post va a proceder a explicar como se hace para activar Mirage y Discovery en nuestro Dspace 1.7 o 1.8.
ACTIVACION DE MIRAGE
Tendremos que ir al fichero xmlui.xconf ubicado en [dspace-instalación]/conf/xmlui.xconf
Ahí vamos a quitar los comentarios referentes a la linea
<!–<theme name=»Atmire Mirage Theme» regex=».*» path=»Mirage/» />–>
Por lo que nos quedaría de la siguiente forma
<theme name=»Atmire Mirage Theme» regex=».*» path=»Mirage/» />
Una vez hecho esto, debemos comentar el tema que se estuviese usando, normalmente el tema Reference, es decir:
<theme name=»Default Reference Theme» regex=».*» path=»Reference/» />
y añadirle los comentarios, dejándola así.
<!– <theme name=»Default Reference Theme» regex=».*» path=»Reference/» /> –>
Por ahora no hemos hecho mas que cambiar un tema por otro. Llega ahora la hora de la verdad, activar el faceted search.
ACTIVACIÓN DE DISCOVERY
Activar Discovery supone en primer lugar sustituir las transformaciones (aspects) relacionadas con la búsqueda de XMLUI por las nuevas transformaciones que supone Discovery. Para ello, en el fichero xmlui.xconf ubicado en la ruta [dspace-instalación]/conf/xmlui.xconf tenemos que desactivar la linea referente al uso del SearchArtifact, y activar la correspondiente al Discovery. Así, hay que comentar la linea siguiente:
<aspect name=»Searching Artifacts» path=»resource://aspects/SearchArtifacts/» />
quedando la línea de la siguiente forma
<!–<aspect name=»Searching Artifacts» path=»resource://aspects/SearchArtifacts/» />–>
y siendo consecuentes, descomentar la línea de Discovery:
<!–<aspect name=»Discovery» path=»resource://aspects/Discovery/» />–>
quedando la línea de la siguiente forma
<aspect name=»Discovery» path=»resource://aspects/Discovery/» />
El siguiente paso que tenemos que modificar el fichero dspace.cfg, cambiando un par de parámetros:
event.dispatcher.default.consumers
y añadirle a la derecha el parámetro discovery quedando de la siguiente forma.
event.dispatcher.default.consumers = search, browse, discovery, eperson, harvester
La siguiente línea a tocar es la siguiente:
recent.submissions.count
En este caso pondremos el parámetro a cero quedando así la línea:
recent.submissions.count=0
Ya estamos finalizando. El último fichero que debemos comprobar es el dspace-sorl-search.cfg, ubicado en la misma carpeta que los anteriores ficheros. Simplemente chequear que la dirección de nuestro dspace/solr coincide con la especificada en el fichero ¿aún no habíamos dicho que Discovery se apoya en SOLR?… Aseguraros que SOLR está desplegado y funcionando en vuestro Tomcat.
Bien, buscamos la línea:
solr.search.server = http://localhost:8080/solr/search
y ahí debemos comprobar que el puerto de acceso es correcto, lo cambiamos al nuestro, 8180, 8888, el que usemos:
solr.search.server = http://localhost:8180/solr/search
Cuidado, que hay una serie de problemas reportados en JIRA respecto el uso de 127.0.0.1 y el uso de localhost, por lo que quizá se tenga que tantear. (CORREGIDO gracias a la aportación de Javier, de la Universidad de Piura, Perú)
Una vez editados estos ficheros, hay que reiniciar el tomcat para que se apliquen los cambios y ejecutar en línea de comandos el programa update-discovery-index para que se actualicen los índices del Discovery.
[dspace-instalación]/bin/dspace update-discovery-index
Una vez ejecutada, podemos ver los cambios en nuestro Dspace, un magnífico DSPace con búsqueda por facetas:
Ah, un último punto… las etiquetas/textos que usa Discovery no están traducidas, pues no se incluyen en el messages-es.xml del núcleo de Dspace. La opción más razonable es localizar su messages.xml en las fuentes de dspace-discovery y copiarlas, es decir añadirlas, al messages_es.xml que usemos de forma habitual (una vez traducidas, claro..)
Suerte (y gracias a Atmire…)