Problème
Lors du déploiement du code sur AEM, nous constatons que le lot de structure OSGi est actualisé et cause une défaillance dans l'AEM. Dans les journaux, nous voyons des messages similaires à ceux ci-dessous relatifs à notre lot personnalisé :
19.04.2017 15:09:11.606 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Updated bundle custom-bundle-name [496] from resource TaskResource(url=jcrinstall:/apps/customapp/install/custom-bundle-name-1.2.0-SNAPSHOT.jar, entity=bundle:custom-bundle-name, state=INSTALL, attributes=[org.apache.sling.installer.api.tasks.ResourceTransformer=:9035:9042:9011:, Bundle-SymbolicName=custom-bundle-name, Bundle-Version=1.2.0.SNAPSHOT], digest=1492632551274) 19.04.2017 15:09:11.607 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Refreshing 1 bundles: [custom-bundle-name [496]] 19.04.2017 15:09:11.608 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Waiting up to 90 seconds for bundles refresh 19.04.2017 15:09:11.609 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Done refreshing 1 bundles 19.04.2017 15:09:11.609 *INFO* [OsgiInstallerImpl] custom-bundle-nameBundleEvent RESOLVED 19.04.2017 15:09:11.609 *INFO* [OsgiInstallerImpl] custom-bundle-name BundleEvent STARTING 19.04.2017 15:09:11.609 *INFO* [OsgiInstallerImpl] custom-bundle-name BundleEvent STARTED 19.04.2017 15:09:11.610 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Started bundle custom-bundle-name [496] 19.04.2017 15:09:11.627 *INFO* [FelixDispatchQueue] org.apache.felix.framework FrameworkEvent PACKAGES REFRESHED
Environnement
AEM 6.x
Cause
1. Cela peut provenir du fait que le lot ne comporte aucune exportation, importation ou aucun code. C'est une cause connue du problème.
2. Le lot personnalisé pourrait exporter des packages Java au niveau système qui sont déjà exportés et utilisés par certains AEM de base, Apache Felix ou Sling.
Résolution
Un lot OSGi vide
Si vous déployez un lot vide, arrêtez l’opération. Elle n’est pas valide pour cette opération sauf s’il s’agit d’un lot de fragments contenant des ressources.
Exportation au niveau du système
Si vous exportez une bibliothèque utilisée par le système (AEM, Sling, Apache Felix, Oak, etc.), modifiez le lot personnalisé pour intégrer la bibliothèque à l'aide de la balise du module externe Maven <Embed-Dependency>. Vous pouvez choisir d'ajouter la bibliothèque à la balise <Export-Package>. Vous pouvez toujours accéder à la bibliothèque au sein du code du lot, mais elle n'est pas exportée dans les autres lots.
Adobe
Recevez de l’aide plus rapidement et plus facilement
Nouvel utilisateur ?