如何在java类(Servlet)中使用sling对象,我可以在jsp文件中使用它。我们可以在java文件中使用它吗? 像这样在Java类中:
sling.getService(LoginServiceClient.class)
答案 0 :(得分:2)
我相信你正试图在某个servlet中获得OSGi服务(LoginServiceClient
)。如果您的servlet也由OSGi管理(因此它带有@Component
注释),那么您可以使用依赖注入来获得您想要的任何服务:
@Component(immediate = true)
@Service
@Properties({
@Property(name = ServletResolverConstants.SLING_SERVLET_PATHS, value = "/my/servlet/path"),
@Property(name = ServletResolverConstants.SLING_SERVLET_METHODS, value = { HttpConstants.METHOD_GET })
})
public class MyServlet extends SlingSafeMethodsServlet {
@Reference
LoginServiceClient loginServiceClient;
...
}
所有这些注释都由Maven SCR plugin处理。