Pasos para omitir la validación de URL para caracteres especiales en el LinkChecker

Obtenga información sobre cómo omitir la validación de direcciones URL para caracteres especiales en el LinkChecker mediante un atributo para mantener el vínculo intacto.

Descripción description

Entorno

  • AEM as a Cloud Service
  • AEM.5.17

Problema/Síntomas


Se necesita un componente personalizado para procesar un vínculo que contenga caracteres especiales que no sean válidos para una dirección URL. Aunque la opción Deshabilitar comprobación de la configuración de LinkChecker esté establecida como verdadera, LinkChecker sigue validando y quitando el vínculo del HTML representado.





Por ejemplo:

Un vínculo que incluye los caracteres {" y "} que no son válidos para una dirección URL.

<span><a href="{testURL}">TEST URL</a></span>

LinkChecker quitará el vínculo del HTML representado

<span>>TEST URL</span>

Se ha registrado una URISyntaxException en error.log como consecuencia de este proceso de validación.

23.01.2024 12:43:34.500 *WARN* [ 000.000.000.000 [ 1705981414300] GET /content/wknd/language-masters/en/test.html HTTP/1.1] com.day.cq.rewriter.linkchecker.impl.LinkCheckerImpl Ignoring malformed URI: java.net.URISyntaxException: Illegal character in path at index 0: {testURL}

Resolución resolution

Agregue el atributo x-cq-linkchecker="skip" al vínculo en el componente HTL (lenguaje de plantilla de HTML) correspondiente. Este atributo indica al LinkChecker que omita completamente la validación de la URL.

Por ejemplo:

Si un vínculo usa los caracteres {" y "} que no son válidos en una dirección URL.
< span><a x-cq-linkchecker="skip" href="{testURL}">TEST URL</a></span>

Este (vínculo) permanece en el HTML procesado.
< span><a x-cq-linkchecker="skip" href="{testURL}">TEST URL</a></span>

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f