У меня есть пакет OSGi
со службой постоянства (использующий hibernate
) и фрагмент, содержащий конфигурацию (файл xml). В активаторе пакета я загружаю конфигурацию, используя:
@Override
public void start(BundleContext ctx) {
URL url = ctx.getBundle().getResource("hibernate.cfg.xml");
SessionFactory sessionFactory = new AnnotationConfiguration().configure(url).buildSessionFactory();
}
, но иногда URL-адрес равен нулю. Когда я попытался перечислить все доступные
URL
(используя метод findEntries
), оказалось, что собственные пакеты доступны всегда, а фрагменты — только иногда. Я использую Felix
4.0.2, бандл и фрагмент запускаются на одном и том же Felix
. уровень автозапуска.