Я пытаюсь интегрировать GWT с OSGi (Equinox), чтобы предоставить веб-интерфейс для остальной части моей модульной системы. До сих пор мне удалось внедрить сервлет GWT в модуль OSGi.Попытка интегрировать GWT в пакет OSGi
Я использую проект кода кода GWT, созданный плагином Eclipse GWT, который состоит из 3 пакетов: клиент, сервер и общий. Класс в серверном пакете (ui.server.GreetingServiceImpl
) реализует интерфейс в клиентском пакете (ui.client.GreetingService
), и все они находятся в одном комплекте.
Когда я пытаюсь сделать удаленный вызов процедур с вебом-страницы на стороне клиента я получаю сообщение об ошибке:
IncompatibleRemoteServiceException: Could not locate requested interface 'ui.client.GreetingService' in default classloader
я понимаю, что класс не был найден загрузчиком, но я не знаете, как это исправить. Я могу обращаться к классам в других пакетах, требуя или импортируя их, но не интерфейс, который находится в том же пакете, что и класс реализации. Может ли кто-нибудь указать мне в правильном направлении? Я работаю в течение нескольких часов.
Спасибо за ответ. Мне удалось заставить его работать, оказалось, что у меня была круговая зависимость, о которой я не знал, интерфейс был доступен извне пакета, с помощью пакета, содержащего завернутые баннеры GWT. Я исправил это, добавив строку 'Eclipse-RegisterBuddy: GWT-bundle' в файл манифеста ui bundle и строку« Eclipse-BuddyPolicy: зарегистрированная »в манифест GWT-пакета. Я посмотрю на этот проект, который вы связали. – clangenhoven