sling context aware configuration context-aware-configuration-bnd-plugin not working as expected | Community
Skip to main content
Level 3
June 14, 2020
Solved

sling context aware configuration context-aware-configuration-bnd-plugin not working as expected

  • June 14, 2020
  • 3 replies
  • 5579 views

Hi Everyone,

 

I am trying to use sling context aware configurations inside AEM 6.5 project to store some configurations.

As described here https://sling.apache.org/documentation/bundles/context-aware-configuration/context-aware-configuration.html#context-aware-configuration-bnd-plugin

 

I have tried adding bnd statement with below plugin

org.apache.sling.caconfig.bndplugin.ConfigurationClassScannerPlugin

 But still my bundle is not able to identify configuration files (annotated with @2932483) after deploying it into OSGI.

And If i manually add like below then only it started identifying 

Sling-ContextAware-Configuration-Classes:com.abc.caconfigs.MySampleConfig

 Could you guys please let me know how can we do it without adding each class names and should make it work with only plugin? .

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by joerghoh

I have a working example at https://github.com/joerghoh/cqdump/tree/master/ca-config-example which also includes the mentioned plugin.

The maven-bundle-plugin is configured here: https://github.com/joerghoh/cqdump/blob/master/ca-config-example/core/pom.xml

 

Jörg

 

// Update: I do use the maven-bundle-plugin and not the bnd-maven-plugin.

3 replies

joerghoh
Adobe Employee
joerghohAdobe EmployeeAccepted solution
Adobe Employee
June 14, 2020

I have a working example at https://github.com/joerghoh/cqdump/tree/master/ca-config-example which also includes the mentioned plugin.

The maven-bundle-plugin is configured here: https://github.com/joerghoh/cqdump/blob/master/ca-config-example/core/pom.xml

 

Jörg

 

// Update: I do use the maven-bundle-plugin and not the bnd-maven-plugin.

Level 3
June 16, 2020
Hi, I have seen you added Maven-bnd-plugin. Instead why Can't I achieve this with bnd-maven-plugin as described here https://sling.apache.org/documentation/bundles/context-aware-configuration/context-aware-configuration.html#context-aware-configuration-bnd-plugin
arunpatidar
Community Advisor
Community Advisor
June 14, 2020

Did you tried below ?

<plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-maven-plugin</artifactId> <configuration> <bnd><![CDATA[ -plugin org.apache.sling.caconfig.bndplugin.ConfigurationClassScannerPlugin ]]></bnd> </configuration> <executions> <execution> <id>bnd-process</id> <goals> <goal>bnd-process</goal> </goals> <configuration> <bnd><![CDATA[ Bundle-Category: MyApp Sling-Model-Packages: com.aem.core.models -snapshot: ${tstamp;yyyyMMddHHmmssSSS} Bundle-DocURL: ]]></bnd> </configuration> </execution> </executions> </plugin>

 

Arun Patidar
February 2, 2023

The below works for me.

 

<plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-maven-plugin</artifactId> <executions> <execution> <id>bnd-process</id> <goals> <goal>bnd-process</goal> </goals> <configuration> <bnd><![CDATA[ Bundle-Category: MyApp Sling-Model-Packages: com.aem.core.models -snapshot: ${tstamp;yyyyMMddHHmmssSSS} Bundle-DocURL: -plugin org.apache.sling.caconfig.bndplugin.ConfigurationClassScannerPlugin ]]></bnd> </configuration> </execution> </executions> </plugin>

 

arunpatidar
Community Advisor
Community Advisor
February 3, 2023

Hi @shakir 

Just make sure you are including ModelScanner as well for Sling Model

 

e.g. https://github.com/arunpatidar02/aemaacs-aemlab/blob/f96ce5316dfa4798c72d2e87d3a0b41fc49791a4/pom.xml#L160

 

Arun Patidar
Adobe Employee
August 22, 2021

Its not working even though instructions in sling doc are followed, but i figured it out that you need to manually append this line to the bnd-process before the actual ConfigurationClassScannerPlugin in plugin bnd-maven-plugin

 

Sling-ContextAware-Configuration-Classes: 

Then you generated required headers in the MENIFEST file. At this moment i cannot tell you why, but it works for me.

joerghoh
Adobe Employee
Adobe Employee
August 22, 2021

I hope, that the order does not matter. But if the documentation is not accurate anymore and the plugin does not work correctly, I would recommend to discuss this at the Sling lists.