2011-12-20 2 views
1

Я собираюсь разработать одно промежуточное программное обеспечение для бэкэнд-связи. Запрос от клиентской системы преобразуется в запрос на сервер с помощью промежуточного программного обеспечения. Это промежуточное программное обеспечение будет поддерживать любой сервер.Получить образец запроса/ответа с использованием/анализа только указанного URL-адреса

Для запроса клиента я собираюсь использовать формат XML/JSON. Среднее программное обеспечение должно преобразовывать формат XML/JSON в формат сервера, анализируя URL-адрес, указанный клиентом во время выполнения (это могут быть SOAP, WSDL, HTTP и т. Д.).

Мой вопрос: есть ли способ проанализировать URL-адрес во время выполнения? Значит, мне нужно найти тип запроса (будь то SOAP/HTTP, GET/POST).

Заранее спасибо ....

+0

Считаете ли вы, что используете продукт ESB или вам нужно разработать автономное/веб-приложение для Java? Ваши требования звучат для меня как прекрасный пример решения EAI. – AValchev

+0

Я собираюсь разработать его самостоятельно. Я не знаю о ESB/EAI. – MDP

ответ

0

Если вы хотите использовать обычную java, для преобразования данных вы можете использовать XPath/XSLT с большим успехом (на самом деле большинство решений ESB используют его). Изменяя шаблоны XSLT, вы можете применять изменения во время выполнения без перезапуска приложения.

В любом случае вам следует рассмотреть такие решения, как Apache Camel, Mule и Spring Integration, которые специально предназначены для использования в таких проблемных областях. Они помогут вам разделить логику бизнеса и преобразования с транспортом.

Как мои дополнительные советы используют JMS, когда это возможно, это гораздо более надежный транспорт, чем HTTP.

0

Есть много способов анализа URL во время выполнения = время! Для получения дополнительной информации вам необходимо указать платформу, которую вы собираетесь использовать.

Хотите обратить ваше внимание на несколько моментов, надеюсь, что это помогает: 1) SOAP может быть побежал на верхней HTTP, TCP, адрес электронной почты и многих других транспортных ... 2) WSDL не является протоколом на говорят, а скорее способ описать данные, которые будут отправляться через SOAP. 3) GET/POST: обычно каждый HTTP-сервер независимо от языка и/или платформы предоставляет вам информацию о входящем запросе, поэтому вы можете довольно легко отличить это от

+0

Спасибо, deian, за ваш ответ .. Я использую java для этого приложения. Мой вопрос заключается в том, что я хочу преобразовать запрос XML/JSON к серверному запросу во время выполнения. Это возможно? – MDP