OSGi: экземпляр без имени типа X не связан
В настоящее время я сталкиваюсь с проблемой, которую просто не могу решить. Надеюсь, вы сможете мне помочь.
Я создаю модульное приложение Vaadin с Apache Felix и iPojo. Зависимости разрешены, но при запуске приложения Феликс говорит мне следующее:
Instance unnamed of type df.ui.core.impl.BaseVaadinServlet is not bound.
Reason: null
Я просто не могу понять, что Феликс пытается мне сказать. Поиск в интернете не помог, а все остальные экземпляры действительны. В каких случаях могут возникать такие ошибки и как это исправить?
Я должен добавить, что это становится проблемой только при расширении VaadinServlet. Я использую этот учебник. Удаление наследства решает проблему, однако без работающего сервлета vaadin кажется довольно бесполезным;) .
Приветствует Кеннета
@Component(immediate = true)
@Instantiate
// Vaadin Servlet annotations
@WebServlet(value = "/*", asyncSupported = true)
@VaadinServletConfiguration(ui = BaseVaadinUI.class, productionMode = false)
public class BaseVaadinServlet
extends VaadinServlet
{
@Requires
private UIProvider provider;
public BaseVaadinServlet(
@Requires
HttpService httpService,
@Requires(from = "df.ui.core.impl.ResourceProvider")
Factory factory
)
throws ServletException, NamespaceException {
System.out.println("registering");
}
@Override
protected VaadinServletService createServletService(DeploymentConfiguration deploymentConfiguration)
throws ServiceException {
VaadinServletService servletService = super.createServletService(deploymentConfiguration);
servletService.addSessionInitListener(sessionInitEvent ->
sessionInitEvent.getSession().addUIProvider(provider)
);
return servletService;
}
}
("регистрация" не пишется на стандартный вывод)