For my service Service Id is not getting Generated in my project bundle I cannot see it.

Avatar

Avatar

ashwinikhaple

Avatar

ashwinikhaple

ashwinikhaple

18-03-2021

Below is the code for my service and its implementation

SimpleService.java :

 

package com.aem.demo.core;

public interface SimpleService
{
public String MyName();
}

 

SimpleServiceImpl.java :

 

package com.aem.demo.core.impl;

import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
import org.osgi.service.component.ComponentContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.aem.demo.core.SimpleService;

@component(metatype = true, label = "Simple Service Info")
public class SimpleServiceImpl implements SimpleService
{
private final Logger logger = LoggerFactory.getLogger(getClass());
@activate
public void activate(ComponentContext cc)
{
logger.info("------ Service Activated -----");
logger.info("\n {}={}", cc.getBundleContext().getBundle().getBundleId(), cc.getBundleContext().getBundle().getSymbolicName());
}

@Override
public String MyName()
{
// TODO Auto-generated method stub
return null;
}

}

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

Rohit_Utreja

Avatar

Rohit_Utreja

Rohit_Utreja

19-03-2021

Hi @ashwinikhaple,

 

If you are using R6 annotation, then please add the below line of code for service creation.

@Component(service=SimpleService.class,
immediate=true,
.
. )

If you are using SCR annotation,
You need to add the below code to register it as a service.

@Service(value = CustomerDemo.class)

 

 

Please refer to the below URL for the service creation while using SCR/R6 annotation.

https://www.argildx.com/technology/migration-of-scr-annotations-to-ds-annotations/

 

Answers (2)

Answers (2)

Avatar

Avatar

Jörg_Hoh

Employee

Total Posts

3.1K

Likes

1.0K

Correct Reply

1.1K

Avatar

Jörg_Hoh

Employee

Total Posts

3.1K

Likes

1.0K

Correct Reply

1.1K
Jörg_Hoh
Employee

19-03-2021

Can you please describe your problem? It's not entirely clear to me what is not working as expected, or what you are trying to achieve.

Avatar

Avatar

bilala23933647

Avatar

bilala23933647

bilala23933647

18-03-2021

Hi @ashwinikhaple try this:

 

@Component(metatype = true, label = "Simple Service Info")
@Service(value = SimpleService.class)

 

Thanks,

Bilal