Простой способ извлечения объектов извне комплекта состоит в реализации сервлета, как это описал Роберт.
Лучший способ, если бы у вас был намного лучший контроль над возвращаемыми объектами, правильная обработка типов MIME и т. Д.заключается в реализации объекта HttpContext и регистрации его в службе HTTP.Затем служба HTTP всегда вызывает метод HttpContext.getResource (String name) всякий раз, когда запрашивается ресурс.И здесь вы можете обслуживать ваши объекты из файловой системы.Из спецификации:
публичный URL getResource (String name)
Вызывается службой Http для сопоставления имени ресурса с URL.Для регистрации сервлетов Http Service вызовет этот метод для поддержки методов ServletContext getResource и getResourceAsStream.Для регистрации ресурсов служба Http будет вызывать этот метод для поиска именованного ресурса.Контекст может контролировать, откуда берутся ресурсы.Например, ресурс может быть сопоставлен с файлом в области постоянного хранения пакета через bundleContext.getDataFile (name) .toURL () или с ресурсом в пакете контекста через getClass (). GetResource (name).
Пожалуйста, ознакомьтесь с разделом 102.3, Регистрация ресурсов и последующими инструкциями OSGi Service Compendium.Там вся концепция объясняется подробно и с примерами.