Service Name in the AEM forms Watched folder | Community
Skip to main content
Level 2
April 27, 2022

Service Name in the AEM forms Watched folder

  • April 27, 2022
  • 1 reply
  • 1532 views

Hi,

 

How do you get the service names in the  Service Name* drop down. We have a java code developed by third party and I am trying to do this set up in my local. Please Advice. Thanks

 

 

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

1 reply

lukasz-m
Community Advisor
Community Advisor
April 27, 2022

Hi @schallag,

Service Name shows com.adobe.aemfd.watchfolder.service.api.ContentProcessor implementation that are available on your instance. If this filed is empty, that means there are no available custom implementation or for some reason OSGi components that implements above interface are disabled.

I would suggest following activities:

  1. Go to OSGI console /system/console/services.
  2. Look for com.adobe.aemfd.watchfolder.service.api.ContentProcessor
    1. Verify each service, to recognize component name.
    2. Once you have component name, you can open /system/console/components
    3. Look for the component base on the name, and check status of the component - it needs to be Active to be visible under Service Name drop-down.

If you would like to implement your own ContentProcessor please follow below steps:

  1. Make sure you have included - below example use the latest available version. However there are many available versions on Maven central repository. So in case of any issue you can always pickup different one.
    <dependency>
       <groupId>com.adobe.aemfd</groupId>
       <artifactId>aemfd-client-sdk</artifactId>
       <version>6.0.640</version>
       <scope>provided</scope>
    </dependency>
    Adding above dependency is necessary because it provides com.adobe.aemfd.watchfolder.service.api.ContentProcessor interface.
  2. Create new java class that will implement ContentProcessor interface, below is very simple/basic example of skeleton of this class.
    package com.mysite.core;
    import com.adobe.aemfd.watchfolder.service.api.ContentProcessor;
    import com.adobe.aemfd.watchfolder.service.api.ProcessorContext;
    import org.osgi.service.component.annotations.Component;
    
    @Component(
        name = "Sample Content Processor Implementation",
        immediate = true,
        service = {ContentProcessor.class},
        property = {"mykey=myvalue"}
    )
    public class SampleContentProcessor implements ContentProcessor {
    
        @Override
        public void processInputs(ProcessorContext processorContext) throws Exception {
            // place for code that will do some processing
        }
    }
    You can also have a look into example described in Adobe documentation. The main difference between my example and the one from documentation is that I am using osgi annotation. But it will work the same.
  3. Once you have created your own implementation of ContentProcessor you should deploy it to your AEM instance - if everything went well you will see your pid under Service Name drop-down.
  4. In case of issue, please follow steps from the first section of this post - where I've described how you can verify if ContentProcessor OSGi component is Active.
schallagAuthor
Level 2
April 28, 2022

Hi,

Thank You for the reply!!

I have imported the OSGI bundles, Two of them are not starting and throws below error:

 

com.adobe.fd.output.api,version=[5.11,6) -- Cannot be resolved

 

Please Advice.

schallagAuthor
Level 2
April 28, 2022

Make sure you have AEM Forms Add-on installed correctly. Above package is exported by following bundle Adobe XFA Forms Bedrock Connector (com.adobe.livecycle.adobe-lc-forms-bedrock-connector).

Please check that you have above bundle in Active state. If not try to start it manually or reinstall AEM Forms Add-on package.


I tried by making com.adobe.livecycle.adobe-lc-forms-bedrock-connector active, reinstalled AEM forms add on package. I still get the error.