Идеи о том, как подойти к проекту, связанному с интеграцией API - PullRequest
2 голосов
/ 06 января 2010

Я студент и работаю над созданием Java-приложения, которое послужило бы «уровнем перевода» между вызовами веб-службы одного приложения к API JMX другого приложения. Оба приложения находятся в двух разных системах в одной сети.

Таким образом, по сути, она включает в себя поставляемую программу, которая преобразует вызов веб-службы одного приложения в вызовы службы другого приложения в JMX.

Поскольку у меня не было опыта разработки приложений такого типа, у меня возникли следующие вопросы:

  1. Каким может быть обычный подход к структурированию моей программы? У меня есть предыдущий опыт в разработке ядра Java. И я надеюсь, что этого будет достаточно для понимания и использования API-интерфейсов JMX и Web-сервисов.

  2. Какие навыки могут понадобиться? Я имею в виду веб-сервисы, потоки, коллекции и т. Д.

  3. Из того, что я понимаю, в системе, где присутствует приложение с JMX API, будет один Java tar (в системе не требуется никаких частей с вызовами веб-службы). Это правильное предположение?

  4. Есть ли в Интернете образец приложения или учебное пособие, к которым я могу обратиться, чтобы получить представление о том, как действовать?

Любые мысли / идеи очень ценятся.

Ответы [ 2 ]

3 голосов
/ 06 января 2010

Если я вас правильно понимаю, вы хотите создать SOAP / JMX Proxy. Это означает, что он будет получать запросы SOAP и переводить их в JMX, пересылать переведенный запрос и затем делать обратное, чтобы вернуть ответ.

Прокси-сервер - это хорошо известный шаблон проектирования , на котором вы можете основывать свой дизайн. Этот конкретный случай соответствует Удаленный прокси .

1 голос
/ 06 января 2010

Определите ваш интерфейс веб-сервисов в WSDL.(Самый простой способ - начать с создания грубого XML, который вы хотите отправить в Notepad или XML-spy, и затем вводить материал в редакторе WSDL.)

В зависимости от того, какие инструменты вы используете, вы можете или не можетефактически вставьте WSDL в ваше клиент-серверное приложение, но это полезная контрольная точка при ручном кодировании.

Контейнер веб-служб должен управлять поточностью для вас.Установите для него ограничение.

API-интерфейс MBean разработан таким образом, чтобы максимально облегчить вызов JMX.

Если клиент также является Java, он не должен взаимодействовать.

НО, если вам нужен клиент другого типа (в частности, клиент .NET), прочитайте это:

http://www.infoq.com/articles/REST-INTEROP

(Возможно, вам лучше пойти с REST и отказаться от WSDLвеб-сервисы.)

...