Как работает веб-сервис - PullRequest
6 голосов
/ 28 декабря 2010

Я новичок в веб-сервисах и хочу реализовать веб-сервисы, используя java в своем проекте eclipse.

Так что кто-нибудь может рассказать мне, как реализовать и создать проект, пожалуйста

Спасибо

Ответы [ 3 ]

8 голосов
/ 19 мая 2012

Как определено веб-сервисом W3C, это программная система для поддержки взаимодействия компьютеров между компьютерами по сети.Более детально система использует сервис из другой программной системы.

Веб-сервисы имеют два основных класса:

  • REST-совместимый
  • произвольный веб-сервис

Для реализации веб-сервиса необходимо выбрать одну категорию на основе его / ее требования.У Java есть куча APIS для реализации веб-сервисов в обеих категориях.

Требования к реализации веб-сервиса:

  • XML
  • WSDL (язык описания веб-сервиса)
  • Протокол SOAP и т. Д.

Основанный на REST немного прост в реализации по сравнению с другими категориями.Поэтому лучше начать с веб-сервисов жалоб REST.

Как работает веб-сервис:

WS работает как парадигма запрос-ответ, есть объект, который будет запрашиватьнекоторые услуги для его конкретного партнера, а именно сущность поставщика услуг.По запросу поставщик услуг ответит ответным сообщением.Таким образом, участвуют два сообщения, слушающих одно сообщение запроса (XML) и одно ответное сообщение (XML).Есть множество способов достичь этого.Подробности можно найти в архитектуре веб-службы

Начинающий может начать с JERSEY jsr311 стандартной эталонной реализации для создания веб-служб RESTful.

Пример (jerseyспецифично):

Шаг первый: создание корневых ресурсов

// The Java class will be hosted at the URI path "/helloworld"
   @Path("/helloworld")
   public class HelloWorldResource {

       @GET 
       @Produces("text/plain")
      public String getClichedMessage() {
          return "Hello World";
      }
  }

Шаг второй: развертывание

public class Main {

  private static URI getBaseURI() {
      return UriBuilder.fromUri("http://localhost/").port(8080).build();
  }

  public static final URI BASE_URI = getBaseURI();

  protected static HttpServer startServer() throws IOException {
      System.out.println("Starting ...");
      ResourceConfig resourceConfig = new PackagesResourceConfig("com.sun.jersey.samples.helloworld.resources");
      return GrizzlyServerFactory.createHttpServer(BASE_URI, resourceConfig);
  }

  public static void main(String[] args) throws IOException {
      HttpServer httpServer = startServer();
      System.out.println(String.format("Jersey app started with WADL available at "
              + "%sapplication.wadl\nTry out %shelloworld\nHit enter to stop it...",
              BASE_URI, BASE_URI));
      System.in.read();
      httpServer.stop();
  }    

}

REST REFERENCE -Рой Т.Филдинг

2 голосов
/ 28 декабря 2010

Webservice - это некоторый программный интерфейс, который использует протокол SOAP для связи.Используя мыло, вы можете общаться с любой программой, независимо от того, на каком языке она написана.

SOAP - это протокол связи на основе XML и формат кодирования для взаимодействия между приложениями.Первоначально задуманный Microsoft и программным обеспечением Userland, он развивался через несколько поколений;текущая спецификация - версия SOAP 1.2, хотя версия 1.1 более распространена.Рабочая группа W3C по протоколу XML отвечает за спецификацию.SOAP широко рассматривается в качестве основы для нового поколения межплатформенных кросс-языковых распределенных вычислительных приложений, называемых веб-службами.

Вот несколько примеров:

Javaруководство по веб-службам

Axis - одна из реализаций ASF

CXF (ранее известная как "XFire")

0 голосов
/ 28 декабря 2010

Одним из самых простых и лучших способов является разработка веб-сервиса с использованием Apache Axis.Инструментарий Eclipse SOA поддерживает Axis.

Более подробную информацию о примере проекта можно найти здесь!

http://onjava.com/pub/a/onjava/2002/06/05/axis.html

...