Sto utilizzando Day CQ. Voglio memorizzare alcuni dati in un DB di SQL Server, utilizzando il pool di connessioni disponibile nella console Felix. Posso fare questo da un JSP, utilizzando l'oggetto "sling" di tipo SlingScriptHelper definito nelle defineObjects taggareCome ottenere i servizi OSGi da un pacchetto in Sling/CQ
sling.getService(DataSourcePool.class).
Tuttavia, voglio usare una servlet creata in un pacchetto OSGi per gestire le richieste dal client. Il servlet non ha un tag defineObjects, quindi l'oggetto "sling" non è definito. Non vedo un modo per creare un oggetto SlingScriptHelper valido nel mio servlet, ma sembra che debba essere possibile.
C'è un modo?
Sono stato in grado di utilizzare l'approccio di annotazione SCR. Come potrei ottenere un'istanza di BundleContext, però? Era qualcosa che non ero in grado di capire. – joelt
Non l'ho provato, ma sto pensando che potrebbe essere fatto usando i metodi activate() o forse bind(). – joelt
Nell'attivare (..) e disattivare (..) prendere un oggetto ComponentContext di osgi. Da questo obj è possibile derivare il BundleContext. Non è necessario l'oggetto contesto bundle come indicato da Bertrand; hai solo bisogno di usare DCS per istanziare i tuoi oggetti nel tuo servlet (che è il servizio di fionda). – empire29