How I can see my service in Felix console | Community
Skip to main content
AdobeID24
Level 5
September 27, 2018

How I can see my service in Felix console

  • September 27, 2018
  • 2 replies
  • 2511 views

I am able to see my bundle in aem felix console but I want to see my service HelloServiceImpl I am not able to find ..

Develop.java(This is my consumer class who will consume my services)

=====================================================================================================

package amitsample.core.filters;

import com.adobe.cq.sightly.WCMUse;

import amitsample.core.filters.HelloService;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

public class Develope extends WCMUse {

                Logger logger = LoggerFactory.getLogger(Develope.class);

             protected String details;

                @Override

                  public void activate() throws Exception {

  HelloService serv= getSlingScriptHelper().getService(HelloService.class);

details=serv.getRepositoryName();

logger.info("this is the first log values");

}

                   public String getDetails() {

                                    return details;

                  }

               

  1. HelloService.java(This is my interface ,I have made this because service must implement at least one service)

=====================================================================================================

package amitsample.core.filters;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

/**

* A simple service interface

*/

public interface HelloService{

   

      

    /**

     * @return the name of the underlying JCR repository implementation

     */

    public String getRepositoryName();

}

  1. HelloServiceImpl .java(This is my service )

=====================================================================================================

package amitsample.core.filters;

import javax.jcr.Repository;

import org.apache.felix.scr.annotations.Component;

import org.apache.felix.scr.annotations.Reference;

import org.apache.felix.scr.annotations.Service;

import org.apache.sling.jcr.api.SlingRepository;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

@Service

@Component(immediate = true)

public class HelloServiceImpl implements HelloService {

                Logger logger = LoggerFactory.getLogger(HelloServiceImpl.class);

               

   

    @Reference

    private SlingRepository repository;

    public String getRepositoryName() {

               

                logger.info("this is the first log values inside Helloserviceimp class");

        return repository.getDescriptor(Repository.REP_NAME_DESC);

    }

}

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

2 replies

arunpatidar
Community Advisor
Community Advisor
September 27, 2018

Hi,

Can you check if is it registered as service or component? your service should be listed at above url.

Check http://localhost:4502/system/console/components

Arun Patidar
AdobeID24
AdobeID24Author
Level 5
September 27, 2018

Thanks my bundle was in Installed status ....I didn't notice

joerghoh
Adobe Employee
Adobe Employee
September 27, 2018

I wonder why it is listed as service. It's only a component, but not a service.

You are using the Felix SCR annotations, which means that you need to use both @Component and @Service; if you switch to the OSGI components, @Comonent is sufficient.

Jörg

arunpatidar
Community Advisor
Community Advisor
September 27, 2018

Hi Jorg,

He is using Felix annotation and used service annotation as well thats why it should be listed as service. Initially I was also confused then I saw service annotation just below imports

import org.slf4j.LoggerFactory;

@Service

@Component(immediate = true)

Arun Patidar