Статьи

Краткое руководство: интеграция REST в платформе NetBeans 6.9

В следующем выпуске платформы NetBeans, уже в 6.9 Milestone 1 ( как показано здесь ), одной большой новой функцией будет встроенная поддержка REST в проектах модулей NetBeans. Что это значит? Если раньше вам приходилось создавать клиент REST в отдельном JAR, а затем присоединять этот JAR в модуле оболочки библиотеки к вашему приложению на платформе NetBeans … теперь вы сможете генерировать код клиента REST изнутри источника Java файл в модуле NetBeans из этого всплывающего окна (нажмите Alt-Insert, чтобы увидеть его уже в ежедневных сборках):

Вот небольшой сценарий, который показывает, как все различные части истории REST сочетаются друг с другом в будущей платформе NetBeans 6.9.

  1. Установите правильное распределение IDE NetBeans. Поддержка REST в IDE NetBeans является частью дистрибутива «Java» (или дистрибутива «All»). Хотя обычно имеет смысл использовать дистрибутив «Java SE» только для разработки приложений на платформе NetBeans, поскольку он меньше, теперь вам нужно использовать больший дистрибутив, поскольку только дистрибутивы «Java» (и «All») включают в себя инструментарий веб-разработки, который включает инструментарий для разработки REST. Перейдите по ссылке, чтобы загрузить среду IDE NetBeans (разрабатываемые сборки среды IDE NetBeans 6.9 уже способны выполнить все, что описано ниже).
  2. Создать службу REST. Для демонстрации просто перейдите в мастер New Project и выберите образец Hello World JavaEE 6 REST, как показано ниже:

  3. Завершите работу мастера, описанного выше, а затем разверните простую службу REST Hello World, созданную для вас.

  4. Создайте приложение платформы NetBeans и модуль NetBeans. Теперь снова воспользуйтесь мастером создания проекта и создайте приложение на платформе NetBeans. Когда у вас есть это приложение, создайте новый модуль в этом приложении. Оба эти шага выполняются в категории «Модули NetBeans» мастера нового проекта.

    Примечание. Вам необходимо сделать файлы REST JAR доступными для вашего приложения. Они заключены в модули и доступны для вашего приложения на платформе NetBeans, если вы решите сделать их доступными. Для этого щелкните правой кнопкой мыши узел проекта приложения, выберите «Свойства», а затем перейдите на панель «Библиотеки» в диалоговом окне «Свойства проекта». Там разверните узел «предприятие» и выберите «Библиотеки веб-служб RESTful». Затем нажмите кнопку «Разрешить», чтобы все модули, необходимые для «библиотек веб-служб RESTful», также стали доступны приложению. Затем щелкните правой кнопкой мыши модуль в окне «Проекты», выберите «Свойства», перейдите в «Библиотеки», а затем установите в своем модуле зависимость «Библиотеки веб-служб RESTful». Теперь вы сможете использовать API Джерси,позже в этой процедуре.

  5. Создать действие. Щелкните правой кнопкой мыши узел проекта модуля в окне «Проекты», выберите «Новый | Другое и затем выберите Module Development | Действие. Установите любое имя, выберите любую категорию и завершите работу мастера. Теперь у вас есть приложение на платформе NetBeans, содержащее один модуль и одно действие, состоящее из ActionListener, зарегистрированного в файле layer.xml модуля.
  6. Сгенерируйте клиентский код REST. Внутри класса Action (который представляет собой простой ActionListener из JDK, т. Е. Не какой-то специальный класс NetBeans API), нажмите Alt-Insert. Теперь вы видите пункт меню «Generate Rest Client», показанный на первом изображении выше. Выберите его, и тогда вы увидите это:

    Все сервисы REST, доступные в IDE как проекты, отображаются в диалоговом окне выше. В этом случае у нас есть только один. Нажмите ОК. Ваш ActionListener теперь имеет следующее содержание:

    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;

    public final class SomeAction implements ActionListener {

    public void actionPerformed(ActionEvent e) {


    }

    static class HelloWorldResource_JerseyClient {

    private com.sun.jersey.api.client.WebResource webResource;
    private com.sun.jersey.api.client.Client client;
    private static final String RESOURCE_URI = "http://localhost:8080/HelloWorld/resources/helloWorld";

    HelloWorldResource_JerseyClient() {
    client = new com.sun.jersey.api.client.Client();
    webResource = client.resource(RESOURCE_URI);
    }

    public String getXml() throws com.sun.jersey.api.client.UniformInterfaceException {
    return webResource.accept(javax.ws.rs.core.MediaType.TEXT_HTML).get(String.class);
    }

    public void putXml(Object requestEntity) throws com.sun.jersey.api.client.UniformInterfaceException {
    webResource.type(javax.ws.rs.core.MediaType.TEXT_PLAIN).put(requestEntity);
    }

    public void close() {
    client.destroy();
    }
    }

    }

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

Вывод

Теперь вы готовы использовать сгенерированный код и запустить приложение. Например, в «actionPerformed» выше, вы можете поместить это:

public void actionPerformed(ActionEvent e) {

String message = new HelloWorldResource_JerseyClient().getXml();
JOptionPane.showMessageDialog(null, message);

}

Запустите приложение, вызовите действие (в зависимости от того, где вы зарегистрировали его в файле layer.xml), и вы увидите свое сообщение в JOptionPane:

Поздравляем, это простое быстрое начало интеграции REST с платформой NetBeans завершено. Более сложный сценарий будет представлен в следующий раз, но теперь вы знаете все, что нужно для начала работы с этой новой поддержкой инструментов в IDE NetBeans 6.9 для создания клиентов REST на платформе NetBeans.