Это распространенная проблема при работе с устаревшими API. Поскольку REST не является протоколом по определению можно реализовать либо:
Протокол Преодоление План. Это обычный шаблон SOA, который помогает вам преобразовывать различные протоколы, используя посреднический посредник. Брокер проводит логику преобразования. Вы можете найти more information here. Такие мосты доступны в большинстве ESB и средних продуктах EAI.
Формат преобразования данных Образец. Он преобразуется между форматами данных, и вы можете использовать его для преобразования из XML в формат REST, который вы используете. Вы можете реализовать его, добавив некоторую внутреннюю логику обслуживания, служебные агенты или специализированную службу преобразования. You can see more here.. Вы можете абсолютно использовать Джерси, чтобы построить REST Facade и преобразовать внутренне из XML, или построить логику внутри каждой службы.
Это действительно зависит от размера вашего API и типа решения вам нужно. Для нескольких сервисов я выберу второй подход - это проще, но немного более тесно, а если у меня будет много услуг, я бы пошел на первый подход, который, на мой взгляд, лучше абстрагирует логику преобразования, но для этого может потребоваться дополнительное промежуточное ПО и усилие ,
У меня мало услуг и вы хотите пойти на второй подход. Но можете ли вы рассказать о примерах использования Rest Facade для SOAP для преобразования данных. – skanda
@skanda, вы спросили, можете ли вы использовать Джерси для этого - и да, вы можете. Фактически, вы можете использовать любую инфраструктуру для ее реализации. Решение, которое я предоставил, является технологическим агностиком, и я надеюсь, что мой ответ действительно поможет вам. Увы, на основании относительно широкого вопроса, который вы задали, я не могу предоставить конкретный пример кода, если это то, что вам нужно. Если вы поедете с Джерси, вы можете реализовать новый REST API, который использует существующий API SOAP с JAX-WS (см. Docs здесь http://docs.oracle.com/javaee/5/tutorial/doc/bnayn.html#bnayx) и преобразует каждую услугу в соответствии с некоторым шаблоном или на основе пользовательской логики. –