Службы JAX-RS в Google App Engine

Я разрабатываю приложение Google App Enigne, которое использует некоторые службы REST и, в свою очередь, предлагает веб-службы. Я использую плагин GAE Eclipse. У меня есть 2 вопроса:

  1. Какую библиотеку JAX-RS лучше всего использовать с GAE в настоящее время? Я хотел бы использовать Джерси, потому что я понимаю, что это самая "стандартная" библиотека (не так ли?), но в принципе я мог бы использовать любую... Я искал документацию, но нашел только некоторые образцы в блогах, которые работают только со старыми версиями Джерси и т. д.

  2. Для веб-сервисов, которые я могу предложить, я также думал об использовании JAX-RS, но теперь я не уверен, что это лучший вариант...


person MikO    schedule 06.03.2013    source источник


Ответы (2)


Вы можете использовать Джерси 1.5. Вы можете просмотреть все фреймворки, которые будут воспроизводиться в GAE, на странице http://code.google.com/p/googleappengine/wiki/WillItPlayInJava

Но GAE реализовал версию 1.7.5 как экспериментальную службу Endpoints, которая в перспективе является остальной службой. Проверьте https://developers.google.com/appengine/docs/java/endpoints/

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

person adrian.riobo    schedule 07.03.2013

Проведя небольшое исследование по этому вопросу, я обнаружил, что лучший способ предлагать веб-службы из Google App Engine — использовать Google Cloud Endpoints, которая все еще является экспериментальной технологией, но, насколько я пробовал, она работает хорошо. Кроме того, он очень хорошо интегрирован с GAE и плагином Google для Eclipse.

Чтобы использовать службы REST из Google App Engine, я решил использовать только встроенную в Java клиентскую библиотеку HTTP, как объяснено здесь. Я не знаю, лучший ли это способ, но он очень простой и позволяет избежать проблем совместимости, которые могут возникнуть между GAE и API JAX-RS, такими как Джерси.

Для работы с JSON в GAE (очень полезно для служб RESTful) я использую Google gson — библиотека Java, которую можно использовать для преобразования объектов Java в их представление JSON и наоборот.

person MikO    schedule 08.03.2013
comment
Я провел день, работая с конечными точками. И потерпел неудачу. Я считаю, что на данном этапе он работает только с доменами приложений и OAauth2 от Google (хотя некоторым людям удалось заставить его работать с Oauth от FB). Мои мысли plus.google.com/+EmanueleZiglioli/posts/VdU2TxtHr45 - person ZiglioUK; 16.01.2014