掲示板

Refrescar listado de documentos en plantilla velocity

thumbnail
9年前 に Mario R によって更新されました。

Refrescar listado de documentos en plantilla velocity

Junior Member 投稿: 55 参加年月日: 13/06/06 最新の投稿
Saludos, estoy realizando un desarrollo con liferay 6.1.2 ga3 en el cual se ha puesto como requerimiento listar los archivos de una carpeta específica de la librería de documentos y multimedia.
El listado de documentos debe mostrarse con un estilo personalizado y sin opciones adicionales, por lo cual el visor de documentos y multimedia integrado no aplica.
La solución aplicada es la siguiente:
1. Se creo una estructura con un campo denominado folderName
2. Se creo un template para dicha estructura que utiliza el service locator, busca la carpeta por nombre y luego busca todos los documentos en dicha carpeta.
3. se creo un contenido web para la estructura y template(plantilla)

El problema radica cuando se añaden nuevos documentos a la carpeta, los mismos no son listados automáticamente en el contenido web. Solo refrescan si se edita el contenido web o si pasa un tiempo aproximado de 15 a 20 minutos sin interactuar con el portal.
El siguiente fragmento ilustra el código utilizado

## instancia el servicio de documentos (DLFileEntry) de la biblioteca de documentos
#set($fileService = $serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryLocalService"))

## obtiene el group id
#set($gid = $getterUtil.getLong($request.get("theme-display").get("scope-group-id")))

##busca los documentos en la carpeta utilizando el id de la carpeta
#set($fid = $getterUtil.getLong($folder.folderId))
#set($files = $fileService.getFileEntries($gid, $fid, -1, -1, null))

#foreach($doc in $files)
    <div class="base-margin">
         <h3>$doc.getTitle()</h3>
	  <p>$doc.getDescription()</p>
    </div>
#end



Agradezco cualquier apoyo o sugerencia al respecto...

Saludos,
Mario
thumbnail
9年前 に Emilio Jose Lamas Fraga によって更新されました。

RE: Refrescar listado de documentos en plantilla velocity

Junior Member 投稿: 57 参加年月日: 11/11/29 最新の投稿
Hola,

Lo cierto es que desconozco si hay alguna opción para configurar el refresco de la plantilla, pero dado tu requerimiento, ¿No sería mucho más sencillo realizar el desarrollo con un portlet y visualizar los documentos mediante una estructura de search-container?

Saludos.
thumbnail
9年前 に Iñaki Sainz によって更新されました。

RE: Refrescar listado de documentos en plantilla velocity

Junior Member 投稿: 43 参加年月日: 13/06/05 最新の投稿
Hola,

has intentado desmarcar el flag cacheable de las opciones de esa template en concreto? Este flag está en la pantalla de edición de la plantilla y fuerza a ser evaluada cada vez.

En cualquier caso, si ese contenido se muestra en páginas para usuarios no identificados, puede que la caché que te esté actuando es la caché de página (es mala idea desactivarla si hay mucho tráfico).

Espero que te ayude
thumbnail
9年前 に Mario R によって更新されました。

RE: Refrescar listado de documentos en plantilla velocity

Junior Member 投稿: 55 参加年月日: 13/06/06 最新の投稿
Hola, muchas gracias!
Esa es la respuesta, ya funciona correctamente!!

Atte:
Mario


Iñaki Sainz:
Hola,

has intentado desmarcar el flag cacheable de las opciones de esa template en concreto? Este flag está en la pantalla de edición de la plantilla y fuerza a ser evaluada cada vez.

En cualquier caso, si ese contenido se muestra en páginas para usuarios no identificados, puede que la caché que te esté actuando es la caché de página (es mala idea desactivarla si hay mucho tráfico).

Espero que te ayude