Problema con transacciones y creación de espacios

cancel
Showing results for 
Search instead for 
Did you mean: 
agranjo
Member II

Problema con transacciones y creación de espacios

Hola, estoy desarrollando un webscript con Java y tengo un problema.

Necesito crear unos espacios durante la ejecución del webscript y acceder a ellos para crear otros espacios dentro. El problema es que por diseño de la aplicación, debería poder acceder a esos espacios a partir de su ruta con una búsqueda XPath o similar.

Sin embargo, la búsqueda XPath siempre devuelve null, sospecho que es porque esos espacios no existen aún de forma "confirmada" sino que están dentro de una transacción y la búsqueda XPath no es capaz de encontrarlos.

¿Cómo podría resolver este tema?

gracias.
2 Replies
dacedos
Member II

Re: Problema con transacciones y creación de espacios

Hola!

He hecho algunas pruebas y a mi si me ha creado los dos espacios uno dentro del otro.

¿Puedes dar alguna pista mas de tu problema?
agranjo
Member II

Re: Problema con transacciones y creación de espacios

Creo que ya lo he solucionado. El problema es que realizaba una búsqueda XPath en el contexto de una transacción, y los elementos creados durante la transacción por defecto no son accesibles en la búsqueda.

Pero se puede acceder a ellos si así especificamos en la búsqueda, mediante el método excludeDataInTheCurrentTransaction de un objeto SearchParameters:

SearchParameters sp = new SearchParameters();
sp.setLanguage(SearchService.LANGUAGE_XPATH);
sp.setQuery(miConsultaXPath);
sp.excludeDataInTheCurrentTransaction(false);   // <—  Este es el parámetro que yo no conocía y que por defecto es true… :)
sp.addStore(new StoreRef(StoreRef.PROTOCOL_WORKSPACE, "SpacesStore"));
ResultSet rs = ServiciosAlfresco.getSearchService().query(sp);

Saludos.