Posts

Content Presenter: Wizard vs Page Definition

Image
Content Presenter es uno de los Task Flow más populares en WebCenter Portal dado que permite la visualización de contentidos en WebCenter Content así como Assets del viejo Site Studio. Content Presenter para mostrar contenido de Site Studio y Content Este post explica las diferencias principales entre configurarlo utilizando el Content Presenter Wizard en Runtime y configurarlo en Design/Runtime a través de los parámetros de entrada. Configuración a través de la Page Definition . Configuración por parámetros de Content Presenter Esta configuración está pensada para desarrolladores que usan Content Presenter en sus desarrollos en Design Time o para configurar de una manera más "avanzada" en Runtime cuando se requiere el uso de EL Expressions complicadas. Configuración a través del Wizard Content Presenter Wizard Permite al usuario final configurar de manera sencilla los contenidos a visualizar y qué plantillas utilizar. Diferencias Las preferencias ...

WCP: Profile de Usuario, Cache, Sincronización y LDAP

Image
Existen varios niveles de Caché y API que se debe entender con respecto a los perfiles de usuario en WebCenter Portal. En el siguiente diagrama ilustro los distintos niveles que existen Diagrama ilustrando las capas que participan en el Profile de WebCenter Lo importante del diagrama es: La petición de la página de perfil o información de usuario pide al API de WebCenter Portal la información. WebCenter Portal API ofrece dos capas de API. Acceso a través de la Java Object Caché a la información del usuario. ( WebCenterSecurityUtils / WCSecurityUtility classes ) Es la ilustada en la imagen Acceso directo para obtener la información refrescada. ( UserCacheManager class)  La Java Object Cache y la información de usuario es recogida del esquema de WebCenter Portal . El esquema de WebCenter Portal se refresca con la información de LDAP a través de procesos de sincronización. A niveles de configuración es importante saber que: La información de Caché, sincronizació...

Mostrando el tamaño de un fichero en Content Presenter

Image
Este post surge del siguiente Thread del foro de OTN: Show the file size in Kilobytes Para mostrar el tamano de un fichero se utiliza comunmente la siguiente EL Expression que nos da el tamaño en Bytes del nodo actual en una plantilla de Content Presenter. #{node.propertyMap['VaultFileSize'].value} Para mostrar en formato de texto dichos Bytes en Kilobytes etc... Tenemos dos maneras distintas: Usando el JSF Converter que proporciona la librería por defecto de Document Service de Oracle WebCenter. Usar nuestro propio JSF Converter. Fragmento del faces-config.xml registrando el Converter Converts the size of a file expressed as a Number to a String with a size unit. Documents Size Converter com.merchan.sample.jsf.converter.Size com.merchan.sample.jsf.converter.SizeConverter Código del Converter package com.merchan.sample.jsf.converter; import oracle.webcenter.doclib.internal.view.convert.AbstractCo...

WCC - WCS Connector y el metadato xCollectionsID

Image
El conector de WebCenter Sites - WebCenter Content permite sincronizar y crear Assets en WebCenter Sites para acceder al contenido de WebCenter Content como se indica en la documentación oficial de Oracle. Enabling the WebCenter Content Integration Feature En el caso de querer mostrar los contenidos asociados a una carpeta lo más natural es configurar las reglas para utilizar el metadato xCollectionID. xCollectionID de una carpeta en WCC Configurando el conector usando xCollectionID Sin embargo, el conector no realiza la comparación correctamente dado que trata el xCollectionID como un int en lugar de un String. Esto dará lugar a que cuando se ejecute el conector diga No rule matched para cada contenido encontrado por la regla. No rule matched porque compara xCollectionID mal Workarounds: Usar un metadato custom que se propage a todos los contenidos dentro de esa carpeta haciendo uso de Force Propagation de las carpetas. Folder Metadata Propagation Cambiar ...

WebCenter Portal: Custom Skin en Shared Library

Image
Para WebCenter Framework Portal parece estar claro el procedimiento y la manera de poner una Custom Skin para multidiomar los literales de ADF.  Esto lo explicaba en: Custom Skin ADF: Modificación de los estilos y traducción de literales Baja el ejemplo PortalCustomSkins de mi repositorio Git de WebCenter Portal En esta entrada trato de aclarar una de las mayores dudas acerca de cómo hacer Skins con sobrescritura de literales ADF para WebCenter Portal (anteriormente conocido como Spaces). Aquí se resuelven las siguientes dudas: Cómo desplegar un Skin como Shared-lib. Cómo hacer el Skin disponible en la Administración de WebCenter Portal . Cómo despliego un Skin como Shared-lib para WebCenter Portal? Básicamente se puede crear una aplicación con la siguiente estructura: Estructura de proyecto de Skins para WebCenter Portal  Un proyecto por cada Skin que se vaya a desarrollar y poner los archivos en las siguiente carpeta. El archivo trinidad-skins.xml bajo ...

WebCenter Portal y WebCenter Content con Framework Folders

Desde la versión 11.1.1.8.3 de WebCenter Portal es posible utilizar la integración WebCenter Portal - WebCenter Content usando Framework Folders en vez de folders_g como componente de organización por carpetas del contenido. En caso de tener una base de datos Oracle, es obligatorio que Oracle WebCenter Content use OracleTextSearch como motor de búsqueda en vez de DATABASE.FULLTEXT . En el caso de DATABASE.FULLTEXT ocurrirá una excepción en Portal como la que sigue: oracle.webcenter.content.integration.spi.ucm.UCMBridge isRecursiveSearch SEVERE: Repository UCM_Conn is not configured for full text search capabilities. Esta excepción puede despistar puesto que DATABASE.FULLTEXT es full text . El siguiente código es el responsable del test del indexador configurado. public boolean isRecursiveSearch() throws UCMSearchValidationException { if (UCMCoreUtils.isFwkFolder()) { SearchConstants.SearchEngine searchEngine = SearchConstants.SearchEngine.getEngine(getS...

Multilenguaje en una WebCenter Framework Portal

Image
Hace tiempo publiqué una solución de multidioma basada en un ADF Phase Listener. Sin embargo, esta solución tuvo ciertos bugs y problemas que me hicieron retirarla del Blog . Plntilla por defecto con cambio de Idioma Enlace a la versión en inglés No me he olvidado de ello y ahora presento una nueva solución y aquí la traigo :). Esta solución resuelve los siguientes paradigmas del multidioma: Traducción de literales del portal. Traducción de los Navigation Resource del Navigation Model según la Locale actual. Se basa en: Una solución de multidioma basada en preferencia de usuario (Cookie). Un ADF Phase Listener para la invalidación del Navigation Model .   Filtro y Cookie de preferencia de usuario Implementación de un Java Filter que sobreescribirá las Locales permitidas según la Locale actual. Se apoya en un RequestWrapper para la sobrescritura de estas Locales . Por defecto, el lenguage es inglés. public final class LocaleFilter implements Filter { ...