Можно ли программно создавать сервис OSGI с разрешением инъекцийJAVA

Программисты JAVA общаются здесь
Anonymous
Можно ли программно создавать сервис OSGI с разрешением инъекций

Сообщение Anonymous »

К сожалению, я не смог найти способ программно создавать сервис OSGI с разрешенными ссылками. Это хорошо известный факт, что OSGI создает сервис как объект Singleton. Из -за какой -то причины мне нужно создать новые экземпляры службы вручную. < /P>

case: < /p>

@Service(ICasualService.class)
@Component(immediate = true, label = "Casual Service")
public class CasualService implements ICasualService {

@Reference
private ConfigurationAdmin configurationAdmin;
}
< /code>

Использование контекста пакета я могу зарегистрировать свою службу: < /p>

private BundleContext bundleContext;
ICasualService casualService = new CasualService();
Dictionary props = new Properties();
bundleContext.registerService(ICasualService.class.getName(), casualService, props);
< /code>

Тем не менее, этот способ configurationAdmin < /strong> является нулевым в новой созданной службе. < /p>

Вопрос в том, возможно ли создать новый экземпляр программного экземпляра? Strong> Update:
решение должно работать для Felix (реализация OSGI).

Подробнее здесь: https://stackoverflow.com/questions/437 ... s-resolved

Вернуться в «JAVA»