La implementación de AEM Cloud Manager falla debido a la falta de importaciones del paquete Apache Tika
En este artículo se describe cómo abordar los errores de canalización de implementación en entornos Cloud Manager de Adobe Experience Manager que se deben a la falta de importaciones de paquetes Tika de Apache en paquetes de aplicaciones personalizadas.
Descripción description
Entorno
- Adobe Experience Manager (AEM) as a Cloud Service
- Cloud Manager
Problema/Síntomas
-
La canalización de implementación falla en el entorno de control de calidad durante el paso de implementación.
-
Todos los pasos anteriores de la canalización (compilación, calidad del código, compilación de imagen, trabajo de transformación y actualizaciones de índice) se han completado correctamente.
-
La implementación falla con un error que indica que los contenedores no están listos.
-
Los registros de publicación de AEM muestran errores repetidos del marco OSGi relacionados con la funcionalidad de extracción de PDF, como:
NoClassDefFoundError: org/apache/tika/io/IOExceptionWithCauseClassNotFoundException: org.apache.tika.io.IOExceptionWithCause not found
-
Los paquetes Apache Tika proporcionados por la plataforma (
org.apache.tika.core,org.apache.tika.parsers) están presentes y activos. -
El paquete de aplicaciones personalizado no importa los paquetes de
org.apache.tika.*necesarios, lo que provoca errores de carga de clases al hacer referencia a clases de Tika. -
El problema se puede reproducir en cada ejecución de canalización para el entorno afectado.
Causa
La canalización de implementación falla porque el paquete de aplicaciones personalizadas no importa los paquetes de Apache Tika necesarios, lo que provoca errores de carga de clases durante el inicio del servicio.
Resolución resolution
Para corregir el error de implementación causado por la falta de importaciones de paquetes de Apache Tika, siga estos pasos:
-
Edite la sección Import-Package del paquete afectado para importar explícitamente todos los paquetes necesarios de
org.apache.tika.*, comoorg.apache.tika.io. -
Ejemplo (en
bnd.bndo equivalente):Import-Package: org.apache.tika.io, org.apache.tika.* -
Asegúrese de que el paquete no incrusta su propia versión de Apache Tika. Confíe en los paquetes Tika proporcionados por la plataforma para evitar conflictos de versiones.
-
Confirme e implemente el paquete actualizado a través de la canalización de Cloud Manager.
-
En la consola web de AEM, compruebe que el paquete personalizado aparece como un paquete de importación para
org.apache.tika.core. -
Confirme que no aparecen
NoClassDefFoundErrorniClassNotFoundExceptionpara las clases de Tika en los registros. -
Compruebe que la extracción de PDF y los servicios relacionados se inician sin errores del marco OSGi.