Плагин Domino OSGI - Не удалось найти проектную заметку

1

Я пытаюсь создать плагин Domino OSGI, который предоставляет простой сервлет Hello World. Для этого я создал в eclipse проект плагина (с web.xml и сервлетом на месте), проект функций, содержащий этот плагин и обновленный проект сайта.

После этого я создал приложение в дизайнере Domino, используя сайт "Eclipse Update Site" в качестве шаблона (имя RestDemoUpdateSite.nsf). Открыв это приложение в администраторе Domino, я успешно импортировал сайт обновления eclipse.

Наконец, я скопировал RestDemoUpdateSite.nsf в папку - C:\Program Files\IBM\Domino\data и добавил строку OSGI_HTTP_DYNAMIC_BUNDLES = RestDemoUpdateSite.nsf в notes.ini.

Ссылка http://<>/RestDemoUpdateSite.nsf открывается отлично

Запрос GET для http://<>/RestDemoUpdateSite.nsf/api/дает ответ json

{
  "services":[
    {
      "name":"Data",
      "enabled":false,
      "version":"9.0.1",
      "href":"\/RestDemoUpdateSite.nsf\/api\/data"
    },
    {
      "name":"Calendar",
      "enabled":false,
      "version":"9.0.1",
      "href":"\/RestDemoUpdateSite.nsf\/api\/calendar"
    },
    {
      "name":"Core",
      "enabled":true,
      "version":"9.0.1",
      "href":"\/RestDemoUpdateSite.nsf\/api\/core"
    }
  ]
}

Запрос GET на мой сервлет http://<>/RestDemoUpdateSite.nsf/serviceapi/student дает ошибку

Веб-сервер HTTP: не удалось найти примечание по дизайну - serviceapi/student [/RestDemoUpdateSite.nsf/serviceapi/student] Аноним

Любое предложение или подсказки относительно того, что может пойти не так, было бы очень полезно.

спасибо

Теги:
lotus-domino
lotus

1 ответ

0
Лучший ответ

Первый шаг - убедиться, что ваш плагин загружается инфраструктурой OSGi. Выполните следующую команду консоли сервера:

tell http osgi ss {bundle.name}

Например, tell http osgi ss com.ibm.domino.services список всех плагинов, соответствующих данному имени. В листинге указано, является ли плагин ACTIVE, RESOLVED, INSTALLED и т.д.

Предполагая, что ваш плагин загружен, следующий шаг - убедиться, что вы правильно определяете свой сервлет. Вы сказали, что вы включили файл web.xml, но сервлеты OSGi обычно определяются в файле plugin.xml. Они реализуют расширение org.eclipse.equinox.http.registry.servlets. Вы можете найти более подробную информацию в этих слайдах. См. Раздел "Создание, развертывание и отладка простого сервлета".

  • 0
    Спасибо!! этот слайд очень помогает :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню