RESTful WebServices без Tomcat (или любого другого контейнера) - PullRequest
2 голосов
/ 10 февраля 2011

Есть ли способ реализовать RESTful WebService с использованием Spring 3 (или нет), который не использует какой-либо веб-контейнер?

Спасибо!

Ответы [ 2 ]

3 голосов
/ 10 февраля 2011

Я предполагаю, что запрос RESTful будет поступать через HTTP?Поэтому необходимо что-то прослушивать на соответствующем порте и отправлять запросы в сервисный код.Очевидно, что вы можете написать такой код, но вы, скорее всего, в конечном итоге получите что-то, не очень отличающееся от веб-сервера.

Если ваша цель состоит в том, чтобы внедрить эту возможность в некоторый контекст, то облегченный контейнер, такой как Jetty (какпредложенный skaffman) кажется ответом - вместо этого я бы не хотел писать свой собственный код

Использование такой инфраструктуры, как JAX-RS, делает написание сервисов REST очень простым, поэтому, если реальная цель - разработка сервисов RESTfulбыстро, тогда я буду готов жить с контейнером, который сделает всю работу за меня.

1 голос
/ 10 февраля 2011

Теоретически, да - различные компоненты Spring-WS отделены от Servlet API. Таким образом, теоретически вы можете использовать встроенный в Sun Java6 JRE веб-сервер.

На практике это будет много дополнительной работы. Вам придется соединить API-интерфейс Sun Web Server с API-интерфейсом Spring-WS.

В качестве альтернативы традиционным контейнерам сервлетов я настоятельно рекомендую Embedded Jetty , где ваше приложение может запускать легкий контейнер сервлетов внутри себя и обслуживать Spring-WS.

...