Show Menu
TEMAS×

Desarrollo y diferencia de página

Información general de características

La creación de contenido es un proceso iterativo. La creación con eficiencia de contenido requiere poder ver qué ha cambiado de una iteración a otra. Visualizar una versión de la página y luego otra es un proceso poco eficaz y propenso a errores. Un autor desea poder comparar la página actual con una versión anterior en paralelo con las diferencias resaltadas.
La diferencia de página permite al usuario comparar la página actual con los inicios, las versiones anteriores, etc. Para obtener más información sobre esta función de usuario, consulte Diferencia de página .

Detalles de la operación

Al comparar versiones de una página, AEM vuelve a crear la versión anterior que el usuario desea comparar en segundo plano para facilitar la diferencia. Esto es necesario para poder representar el contenido para una comparación paralela.
Esta operación de recreación la realiza internamente AEM y es transparente para el usuario y no requiere ninguna intervención. Sin embargo, un administrador que visualiza el repositorio, por ejemplo, en CRX DE Lite, vería estas versiones recreadas dentro de la estructura de contenido.
Cuando se compara el contenido, todo el árbol hasta la página que comparar se vuelve a crear en la siguiente ubicación:
/tmp/versionhistory/
Se ejecuta automáticamente una tarea de limpieza para limpiar este contenido temporal.

Permisos

Anteriormente, en la IU clásica, había que tener especialmente en cuenta el desarrollo para facilitar la difusión de AEM (como usar la biblioteca de cq:text etiquetas o la integración personalizada del servicio DiffService OSGi en los componentes). Esto ya no es necesario para la nueva función de diferencia, ya que la diferencia se produce en el cliente mediante la comparación DOM.
Sin embargo, hay una serie de limitaciones que el desarrollador debe tener en cuenta.
  • Esta función utiliza clases CSS que no tienen espacios de nombres en el producto AEM. Si en la página se incluyen otras clases CSS personalizadas o clases CSS de terceros con los mismos nombres, la visualización de la diferencia puede verse afectada.
    • html-added
    • html-removed
    • cq-component-added
    • cq-component-removed
    • cq-component-moved
    • cq-component-changed
  • Debido a que la diferencia es del lado del cliente y se ejecuta al cargar la página, no se contabilizarán los ajustes en el DOM después de ejecutar el servicio de diferencias del lado del cliente. Esto puede afectar
    • Componentes que utilizan AJAX para incluir contenido
    • Aplicaciones de una sola página
    • Componentes basados en JavaScript que manipulan el DOM tras la interacción del usuario.