Búsquedas con Java JCR API

RECU-0068 (Recurso Ejemplo)

Descripción

Búsqueda con Lucene

La búsqueda con Lucene no se implementa en la API de JCR

Búsqueda con Xpath

Obtenemos el Bean necesario para poder acceder al respositorio mediante JCR

ApplicationContext context = new ClassPathXmlApplicationContext("classpath:alfresco/application-context.xml");
        Repository repository = (Repository)context.getBean("JCR.Repository");

El siguiente paso sera el de identificarnos en el sistema

Session sesion = repository.login(new SimpleCredentials("admin", "admin".toCharArray()));

Generamos la consulta en formato Xpath

try {            
        Workspace workspace = sesion.getWorkspace();
        QueryManager queryManager = workspace.getQueryManager();
        Query query = queryManager.createQuery("//app:company_home/*", Query.XPATH);

Realizamos la búsqueda

QueryResult result = query.execute();

Obtenemos los resultados de la búsqueda

NodeIterator it = result.getNodes();

Mostramos los resultados

while (it.hasNext())
            {
           
            Node n = it.nextNode();           
            System.out.println("Nombre: "+n.getProperty("cm:name").getString());
           
            }

Finalizamos en try

} catch (InvalidQueryException e) {
            e.printStackTrace();
        } catch (RepositoryException e) {
            e.printStackTrace();   
        } catch (Exception e) {
            e.printStackTrace();
        }