Ist es möglich, den OSGI -Dienst programmgesteuert mit gelösten Injektionen zu erstellen?Java

Java-Forum
Anonymous
 Ist es möglich, den OSGI -Dienst programmgesteuert mit gelösten Injektionen zu erstellen?

Post by Anonymous »

Leider konnte ich keinen Weg finden, einen OSGI -Dienst programmgesteuert mit gelösten Referenzen zu erstellen. Es ist eine bekannte Tatsache, dass OSGI Service als Singleton -Objekt schafft. Aufgrund eines Grundes muss ich neue Serviceinstanzen manuell erstellen.@Service(ICasualService.class)
@Component(immediate = true, label = "Casual Service")
public class CasualService implements ICasualService {

@Reference
private ConfigurationAdmin configurationAdmin;
}
< /code>

Verwenden von Bundle -Kontext Ich kann meinen Dienst registrieren: < /p>

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

Auf diese Weise ist configurationAdmin < /strong> in einem neu erstellten Dienst null. < /p>

Die Frage ist, ob es möglich ist, eine neue Instanz des Dienstes programmatisch zu erstellen? Strong> Update:
Lösung sollte für Felix (OSGI -Implementierung) funktionieren.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post