Появление в HP IMC интерфейса RESTful Web Services

в 7:24, , рубрики: Блог компании HP, Железо, Программирование, сервер, серверное программирование, Сетевые технологии, сеть, системное программирование, управление, метки: , , , , ,

С появлением в системе управления HP IMC web-сервиса доступа RESTful eAPI, система может теперь не только управлять устройствами, но и быть частью общего комплекса управления мультивендорной средой, обеспечивая следующую ступень к автоматизации и гибкости настройки всей сетевой инфраструктуры.

iMC обеспечивает web сервисы на основе открытой сервис ориентированной архитектуры (SOA). Web сервисы главным образом выполнены через использование следующих методов: REST, SOAP, and XML-RPC. В сравнении с другими двумя методами REST-style функционал прозрачен и прост.

Доступ к iMC RESTful web сервисам может быть получен с помощью следующих Java REST клиентов:

  • Apache Commons HTTP Client (3.1)
  • Apache HTTP Client (4.x)
  • SpringFramework (3.x) RestTemplate
  • Jersey Client
  • Android SDK

Что нужно проделать для написания клиента, использующего IMC-RS? Следующая секция покажет, как получить доступ к IMC-RS при помощи Java.

Приготовления

  1. Нужно инсталлировать и развернуть iMC 5.1 Enterprise или более позднюю версию. Запустить iMC и сделать autodiscovery.
  2. Загрузить и установить JDK 6 или JRE 6.
  3. Загрузить и установить Eclipse 3.6 или более позднюю версию.
  4. Загрузить Apache HttpClient 4.1 или более позднюю версию и разархивировать его на локальной машине .
  5. Убедится в доступности iMC-RS.
    (введите "http://imc_host:port/imcrs/application.wadl" в адресной строке бразузера, где imc_host имя хоста или IP адрес iMC сервера, и сервисный порт (8080 по умолчанию)).
  6. В диалоговом окне аутентификации введите «admin» как имя пользователя и пароль и нажмите OK.
  7. Если браузер отобразит XML документ "<application>" как корневой узел, iMC-RS готов к использованию.
  8. Запустите Eclipse и создайте проект.
  9. Select File > New > Java Project.
  10. Наберите имя проекта «MyRestClient» и нажмите Next.
  11. Нажмите Libraries tab, щёлкните Add External JARs, и добавьте разархивированные Apache HttpClient файлы httpcore-4.1.jar, httpclient-4.1.jar, and commons-logging-1.1.1.jar to the project.
  12. Нажмите Finish.

Скомпилируйте код iMC-RS клиента

  1. Щёлкните на проекте правой кнопкой мыши и выберите New > Class из меню.
  2. В wizard, наберите имя пакета (например, com.mycompany.rest) и имя класса (например, MyClient), выберите Create Main Class, и нажмите Finish.
  3. Введите следующий код в новом классе:

package com.mycompany.rest;
 
import org.apache.http.HttpResponse;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
 
public class MyClient {
    public static void main(String[] args) throws Exception {
        DefaultHttpClient client = new DefaultHttpClient();
        client.getCredentialsProvider().setCredentials(
            new AuthScope("imc_host", 8080, "iMC RESTful Web Services"),
            new UsernamePasswordCredentials("admin", "admin"));
        HttpGet get = new HttpGet("http://imc_host:8080/imcrs/plat/res/device");
        get.addHeader("accept", "application/xml");
        HttpResponse response = client.execute(get);
        System.out.println(response.getStatusLine());
        System.out.println(EntityUtils.toString(response.getEntity()));
    }
} 

Запустите код и посмотрите на результат

Выберите Run > Run или нажимте Ctrl + F11 для запуска кода. Консоль Eclipse отобразит следующее:

 
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><list start="0">......</list> 

Вывод показывает что вы успешно сделали запрос информации об устройствах и получили информацию о первых десяти устройствах в формате XML.

Пример запроса детальной информации об устройстве:

Появление в HP IMC интерфейса RESTful Web Services

Автор: kristina_k

Поделиться

* - обязательные к заполнению поля