I think you have referenced EcommerceResponse in your servlet using @reference annotation and EcommerceResponse is a POJO class right?
We use @Reference annotation to inject OSGi service. As EcommerceResponse is not an OSGi service and EcommerceResponse is not available in OSGi Service Registry ...
I agree with @Kiran_Vedantam here, we have content fragment and experience fragment features in AEM. Using these we can create content at centralized location and after publishing the updated content will be available across multiple sites.
Just sharing one idea here if we do send required metadata of each asset to Solr for indexing and use this Solr search in external application.
Do you see any deficiency @arunpatidar with this approach?
We use @reference annotation to inject OSGi service.
You can define your Util class as similar to https://github.com/adobe/aem-core-wcm-components/blob/main/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/Utils.java
Then call the relevant static method using
Utils.methodname...
I feel if you add those users to OOTB content-authors user group as shown below then they will be able to use pick button as expected -
I have tested at my end. Please give a try.
Sharing few examples -
https://www.flexibledesigns.rs/creating-a-link-rewriter/
https://wttech.blog/blog/2019/how-to-use-sling-transformers-in-aem/
Here you could see, they have rewriter under /apps/APPNAME/config