Я пытаюсь создать образец приложения для тех технологий, которые я хочу использовать в проекте, над которым я работаю. В частности, я хочу создать пакет приложений OSGi Web Application Bundle (WAB), который реализует конечные точки обслуживания JAX-RS2. Я работаю через RESTful Java с JAS-RS 2 (Билл Берк, я бы опубликовал ссылку, но у меня недостаточно репутации) для концептуальных сервисов JAX-RS. На этом этапе я реализовал службы клиентов, перечисленные в главе 3. Я несколько раз просмотрел сайт this, а также несколько других ресурсов по созданию WAB. Я использую eclipse Luna с динамичным веб-проектом, к которому я добавил природу проекта BND. Я экспортирую проект как .war, чтобы поддерживать правильную структуру WAR. Я проверил вручную, что манифест OSGi находится в правильном месте и содержит правильные утверждения (т. Е. Соответствует тому, что находится в среде IDE).JAX-RS 2 & OSGi в Glassfish 4 не работает
Моя проблема заключается в том, что при развертывании файла в Glassfish (я использую Glassfish 4) в качестве WAR он развертывается отлично, и я могу получить доступ к сервисам. Однако, поскольку он не загружается как пакет OSGi, у меня нет доступа к другим пакетам OSGi.
Когда я разворачиваю файл в виде пакета OSGi (тип: Other, OSGi checked), он снова развертывается нормально, но, похоже, не загружается в контейнер Servlet, потому что все URL-адреса возвращают ошибку 404.
Видимо я могу разместить только 2 ссылки и подсчитывать фрагменты кода в виде ссылок, так что все, что я могу включить мой файл манифеста:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: ShoppingApplication
Bundle-SymbolicName: com.restfully.shop
Bundle-Version: 1.0.0.alpha
Bundle-ClassPath: WEB-INF/classes/
Bundle-Vendor: Perform Air International Inc.
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Web-ContextPath: /OrderEntry
Export-Package: com.restfully.shop.services;uses:="javax.ws.rs.core,javax.servlet,org.osgi.service.event,org.osgi.framework"
Import-Package: javax.servlet;version="[3.0.0,4.0.0)",javax.servlet.annotation,javax.servlet.http,javax.ws.rs.core,org.osgi.framework,org.osgi.service.event
Bundle-Activator: com.restfully.shop.osgi.WebAppContextListener
Позвольте мне знать, что другие части информации могут быть полезны, и я Я попытаюсь сделать их доступными для сообщества.