Работа с экземпляром Jetty (v 8), работающим под JPOS QBean. Для простоты я хотел бы добавить веб-службу REST на основе сервлета на основе Джерси, используя только конфигурацию, без необходимости программировать регистрацию сервлета. У меня есть компоненты ресурсов POJO с аннотациями JXB, на которые указывает настройка пакетов трикотажа, но это пока не важно.
На мой упрощенный взгляд, следующее, добавленное в Jetty webdefault.xml, должно помочь:
<!-- JPOS As WebSvc -->
<servlet>
<servlet-name>jpos</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.test.rest.svc</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping> <servlet-name>jpos</servlet-name> <url-pattern>/jpos/*</url-pattern></servlet-mapping>
Однако похоже, что эта запись просто не зарегистрирована, так как я вижу в журналах только инициализированные сервлеты по умолчанию и jsp.
Я просмотрел содержимое jetty.xml и добавил собственный обработчик для разных целей, но не ясно, можно ли добавить сервлет через настройки коллекции обработчиков. Кажется, встроенный ServletHandler уже инициализирован и загружает сервлеты по умолчанию и jsp, поэтому я не думаю, что смогу указать это в jetty.xml, чтобы добавить свой сервлет (даже если бы я знал, как его настроить).