cancel
Showing results for 
Search instead for 
Did you mean: 

Problema con luceneSearch

ruben_arjonilla
Champ in-the-making
Champ in-the-making
Buenos días a todos,

estoy creando un script que se ejecuta según una regla que he puesto a una carpeta, y en el script necesito hacer una búsqueda de una categoría, que me vendrá por un argumento (esta parte la tengo ya echa)

el problema viene a la hora de ejecutar la búsqueda.

por ejemplo, si pongo:
nodeRef = search.luceneSearch('TYPE:"cm:category");
la búsqueda funciona correctamente, y me devuelve un listado con todas las categorías existentes

nodeRef = search.luceneSearch('TYPE:"cm:category"+@cm\\:name:"Guam"');
la búsqueda funciona correctamente, y me devuelve un listado con solo una categoría, la de "Guam"

El problema lo tengo al ejecutar esta misma anterior, pero con una palabra compuesta, por ejemplo "American English"
nodeRef = search.luceneSearch('TYPE:"cm:category"+@cm\\:name:"American English"');
Esta búsqueda no me devuelve nada, sin embargo, hay una categoría que se llama "American English"

La búsqueda solo me falla al buscar una palabra con un espacio de por medio.

He leído algo acerca de la codificación y de que hay que sustituir el carácter espacio por _x0020_ de manera que quedaría así:
nodeRef = search.luceneSearch('TYPE:"cm:category"+@cm\\:name:"American_x0020_English"');
Pero tampoco me devuelve ningún valor

Alguien tiene idea de que puede estar pasando?

También he leído que la gente usa el "explorador de nodos" para probar las querys, alguien sabe como acceder a el?

Muchas gracias,

Rubén Arjonilla Zamora
5 REPLIES 5

ruben_arjonilla
Champ in-the-making
Champ in-the-making
Ok, he encontrado el Explorador de Nodos (Node Browser)
http://www.alfresco.com/help/webclient/tasks/tuh-admin-nodebrowser.html

escojo la opcion: workspace://SpacesStore

y donde pone search, escojo lucene
aqui puedo probar las querys que he puesto antes, y me dan exactamente el mismo resultado que me daban desde la aplicación.

Donde puedo tener el problema a la hora de buscar un cm:name compuesto de varias palabras separadas por espacio?
sigue sin funcionarme poniendo "American English" ni poniendo "American_x0020_English"

baskeyfield
Champ in-the-making
Champ in-the-making
Buenas,

¿Qué versión de Alfresco utilizas?

En mi Alfresco 3.2r2 esto funciona (desde el explorador de nodos):

TYPE:"cm:category"+@cm\:name:"Personal Externo"

Pd: ¿Las búsquedas en general te funcinan bien? ¿Encuentras documentos con espacios en los nombres?

Saludos.

ruben_arjonilla
Champ in-the-making
Champ in-the-making
La versión que utilizamos es la 3.3g

por ejemplo, si buscamos:
+TYPE:"cm:category" +@cm\:name:"British English", encuentra bien la categoria

en cambio si buscamos:
+TYPE:"cm:category" +@cm\:name:"Australian English", no me sale ningún resultado (y existe)

y asi con varios de los nombres que he buscado.
Algunos funcionan bien, y otros no los encuentra.

También he tenido problemas con busquedas de una sola palabra como:
+TYPE:"cm:category" +@cm\:name:"Languages", no me sale ningún resultado (y existe)

en cambio, buscando:
+TYPE:"cm:category" +@cm\:name:"English", me salen English, British_x0020_English, Australian_x0020_English, Canadian_x0020_English, Indian_x0020_English    y American_x0020_English

No observamos que siga ningún criterio a la hora de mostrar los resultados de la busqueda

baskeyfield
Champ in-the-making
Champ in-the-making
Teneis instalado el paquete de idioma castellano y configurado Alfresco para poder loguearse como "Spanish"?

Saludos.

ruben_arjonilla
Champ in-the-making
Champ in-the-making
Desde el servidor donde hemos estado haciendo las pruebas no están instalados los paquetes de idioma.

Ahora hemos realizado pruebas en un servidor con una nueva instalación, también la 3.3g, y sin idiomas y funciona correctamente.
Y también hemos realizado pruebas en otro servidor 3.3g, este con los idiomas instalados, y tampoco ha dado ningún problema.

Puede que tenga algún problema con la instalación?

He probado a iniciar alfresco con la opción index.recovery.mode=FULL, para que me reindexe la base de datos, y aún así me sigue fallando en ciertas búsquedas.