03-06-2009 08:36 AM
<webscript>
<shortname>Busqueda personalizada</shortname>
<description>Realiza una busqueda en el repositorio</description>
<url>/busquedapersonalizada</url>
<url>/busquedapersonalizada?nombre={nombre?}&autor={autor?}</url>
<authentication>user</authentication>
</webscript>
busquedapersonalizada.get.jslogger.log("nombre: \"" + args.nombre + "\"");
logger.log("autor: \"" + args.autor + "\"");
if (args.autor != "" || args.nombre != "") {
var queryBusqueda = "(PATH:\"/app:company_home//*\" )";
if (args.autor != "") queryBusqueda += " AND (@cm\\:author:" + args.autor + ")";
if (args.nombre != "") queryBusqueda += " AND (@cm\\:name:" + args.nombre + ")";
var resultados = search.luceneSearch(queryBusqueda);
if (resultados == null) resultados = new Array(0);
model.resultados = resultados;
}
busquedapersonalizada.get.html.ftl<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Prototipo de búsqueda</title>
</head>
<body>
<p>
<a href="http://www.alfresco.com" target="_blank"><img src="${url.context}/images/logo/AlfrescoLogo32.png" alt="Alfresco" /></a>
</p>
<h1>Búsqueda de documentos</h1>
<form method="get" action="http://localhost:8080/alfresco/service/busquedapersonalizada">
<table>
<tbody>
<tr><td>Nombre</td><td><input type="text" size="20" maxlength="20" name="nombre" /></td></tr>
<tr><td>Autor</td><td><input type="text" size="20" maxlength="20" name="autor" /></td></tr>
</tbody>
<tfoot>
<tr><th colspan="2" align="left"><input type="submit" value="Buscar" /></th></tr>
</tfoot>
</table>
</form>
<#if resultados??>
<p>Parámetros de búsqueda:<p>
<table>
<tr><td>Nombre:</td><td>${args.nombre}</td></tr>
<tr><td>Autor:</td><td>${args.autor}</td></tr>
</table>
<br />
<table>
<#if (resultados?size > 0)>
<thead>
<tr><th>Nombre documento</th><th>Tipo documento</th><th>Autor documento</th></tr>
</thead>
<tbody>
<#list resultados as child>
<tr><td>${message(child.properties["cm:name"])}</td><td>${message(child.properties["cm:type"])}</td><td>${message(child.properties["cm:author"])}</td></tr>
</#list>
</tbody>
</#if>
<tfoot>
<tr><th align="left" colspan="2">Total resultados:</th><td>${resultados?size}</td></tr>
</tfoot>
</table>
</#if>
</body>
</html>
freemarker.core.InvalidReferenceException - Expression args.nombre is undefined on line 29, column 51 in busquedapersonalizada.get.html.ftl.
freemarker.core.InvalidReferenceException - Expression message(child.properties["cm:name"]) is undefined on line 39, column 43 in busquedapersonalizada.get.html.ftl.
03-09-2009 05:42 AM
<#list resultset as node>
<tr>
<td><img src="${url.context}${node.icon16}"/>
<td><a href="${url.serviceContext}/api/node/content/${node.nodeRef.storeRef.protocol}/${node.nodeRef.storeRef.identifier}/${node.nodeRef.id}/${node.name?url}">${node.name}</a>
</tr>
</#list>
03-09-2009 07:29 AM
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.