Плагин OSGi не запускается в Tomcat - PullRequest
0 голосов
/ 30 марта 2009

У меня есть плагин OSGi с активатором, который я запрашиваю запустить в рамках моего проекта tomcat jsf.

На основании: http://www.eclipse.org/equinox/documents/quickstart.php и некоторых других документов я поместил эту структуру в свой каталог WEB-INF, чтобы начать реализацию osgi в режиме равноденствия. Я был в состоянии получить доступ к плагинам напрямую, но не программно, ссылаясь на него из другого плагина. Это тот пример.

MyProject конфигурация / config.ini org.eclipse.osgi_3.3.0.jar org.eclipse.equinox.common_3.3.0.jar org.eclipse.update.configurator_3.2.100.jar плагины / com.fnet.tts.service_1.0.0.jar

Я поместил следующие две строки в config.ini

osgi.bundles=org.eclipse.equinox.common@2: start, org.eclipse.update.configurator@start, org.eclipse.equinox.registry@3: start, com.fnet.tts.service@4 :Начните osgi.bundles.defaultStartLevel = 4

Однако я получаю эту ошибку, когда пытаюсь активировать пакет, который вызывает tts.service.

Подробнее: com.fnet.runtime.KSException: не удалось запустить пакет 'com.fnet.tts.service.viewSchedule_2.0.0.jar' at com.runtime.impl.RuntimeServiceImpl $ KSImpl .loadKnowledgebase (RuntimeServiceImpl.java:190) на com..loadKnowledgebaseHandle (InterviewContext.java:83) Вызвано: org.osgi.framework.BundleException: Пакет не может быть разрешен. Причина: отсутствует ограничение: Require-Bundle: com.fnet.tts.service; пачка версия = «1.0.0» в org.eclipse.osgi.framework.internal.core.BundleHost.startWorker (Bundl eHost.java:305) в org.eclipse.osgi.framework.internal.core.AbstractBundle.start (Abstrac tBundle.java:265) в org.eclipse.osgi.framework.internal.core.AbstractBundle.start (Abstrac tBundle.java:257) в com.fnet.runtime.impl.RuntimeServiceImpl $ KSImpl .loadKnowledgebase (RuntimeServiceImpl.java:188) ... еще 3

Я смотрю на это часами и ищу подсказку, подсказку или ответ, чтобы я мог двигаться вперед.

Спасибо.

1 Ответ

0 голосов
/ 31 марта 2009

Можете ли вы включить дополнительные выходные данные отладки, чтобы увидеть, что случилось с пакетом "com.fnet.tts.service"? Equinox пытался загрузить его и потерпел неудачу, или даже не пытался?

Кроме того, вы можете получить доступ к консоли OSGi? Если да, то как выглядит список установленных пакетов? Можно ли установить пакет с консоли вручную?

Вы запускаете свой пакет на начальном уровне 4. Возможно, этот начальный уровень не достигнут. Работает ли это, когда вы запускаете свой пакет (все пакеты?) На уровне 1?

...