Web-Service-Szenario mit einem Onlineeinzelhändler für Gartenartikel: Dynamische Lieferantenabfrage

In diesem Dokument wird ein Szenario beschrieben, in dem ein Onlinehändler für Gartenzubehör Web-Services verwendet, um den Bestand verschiedener Großhändler zu überprüfen.

Im Web-Service-Szenario "Statische Lieferantenabfrage" stellen die Entwickler der Anwendung "Plants by WebSphere" separate Verbindungen zu den einzelnen Lieferanten her und nehmen Änderungen vor, wenn Lieferanten wegfallen bzw. hinzukommen. Es soll die Möglichkeit geschaffen werden, mehrere Lieferanten gleichzeitig abzufragen, ohne eine Liste bestimmter Lieferanten für die Abfrage zur Verfügung zu stellen. Außerdem möchten die Manager von Plants by WebSphere die Möglichkeit bieten, schnelle Einkäufe basierend auf bestimmten Kriterien, wie z. B. dem Großhandelspreis oder der schnellsten Verfügbarkeit, durchzuführen.

In diesem Szenario haben verschiedene Lieferanten von Pflanzen und Gartenzubehör Web-Services in einer UDDI-Registry (Universal Description, Discovery, and Integration) veröffentlicht. Lieferanten erstellen für den Bestand Web-Services, die eine Standardschnittstelle verwenden. Sie veröffentlichen ihre Web-Services in einer zentralen Registry, die beispielsweise von der Vereinigung der Pflanzengroßhändler zur Verfügung eingerichtet wurde. Oder eine kleine Internet-Firma hat eine Website für Käufer und Verkäufer eingerichtet, da sie die Erkenntnis gewonnen hat, dass Lieferanten und Einzelhändler bereit sind, für diesen Service einen geringen monatlichen Beitrag zu zahlen.

Szenario mit dynamischer Abfrage von Lieferanten

Plants by WebSphere nutzt außerdem die Unterstützung durch das JAX-WS-Programmiermodell (Java™ API for XML Web Services) und unterstützt JavaBeans-Endpunkte im Web-Container und Enterprise-Beans-Endpunkte. Das JAX-WS-Programmiermodell vereinfacht die Konfiguration und die Wiederverwendung von Konfigurationen und gibt Ihnen somit die Möglichkeit, neue Web-Service-Profile ohne Reibungsverluste zu integrieren. Die JAX-WS-Standards unterstützen interoperable und zuverlässige Web-Service-Anwendungen. Der Onlinehändler kann Nachrichten asynchron senden, d. h., die Nachrichten können selbst dann zuverlässig übertragen werden, wenn eine der Parteien vorübergehend offline, beschäftigt oder nicht verfügbar ist. Mit diesen neuen Technologien kann der Onlinehändler sicher sein, dass seine Übertragungen zuverlässig sind und ihr Ziel erreichen, wenn er mit anderen Lieferanten interagiert.

Vorgehensweise bei nicht vorrätigen Artikeln

Folgendes passiert, wenn ein Kunde auf der Website von Plants by WebSphere einen Artikel bestellt, der laut Bestand von Plants by WebSphere nicht vorrätig ist.
  1. Für diesen Fall veröffentlichen die Lieferanten ihre Web-Services im Voraus in einer UDDI-Registry.

    Auf diese Weise benachrichtigen sie anfragende Einzelhändler, z. B. Plants by WebSphere, dass ihre Bestände zur Überprüfung bereit sind.

  2. Plants by WebSphere überprüft seinen eigenen Bestand.

    Die Anwendung, die der Website zu Grunde liegt, überprüft die Bestandsdatenbank von Plants by WebSphere. Sie stellt fest, dass der Artikel nicht vorrätig ist.

  3. Plants by WebSphere verwendet einen UDDI4J-Client, um die UDDI-Registry nach Lieferanten zu durchsuchen, deren Bestände überprüft werden können.

    Plants by WebSphere kann einen Web-Service aufrufen, der die UDDI-Registry auf Lieferanten überprüft. Anschließend werden die Web-Services auf den Sites der einzelnen Lieferanten aufgerufen. Dem Administrator wird eine Liste der Lieferanten, die den angeforderten Artikel liefern können, bereitgestellt, die Angaben zu Preisen und Lieferfristen enthält.

  4. Plants by WebSphere verwendet Web-Services, um die Bestände der Lieferanten zu überprüfen.

    Die Anwendung ruft einen Web-Service für einen Java EE-Client oder (Java Platform, Enterprise Edition) auf, der mit einem SOAP-Server am Standort des Lieferanten kommuniziert, um festzustellen, ob der Lieferant den Artikel am Lager hat. Die Lieferantendaten werden an Plants by WebSphere gesendet.

    Die Anwendung ruft einen JAX-RPC-Client auf. Es kann auch ein JAX-WS-Anwendungsclient aufrufen werden, der mit einem SOAP-Server am Standort des Lieferantenseite kommuniziert, um festzustellen, ob der Lieferant den Artikel am Lager hat. Die Lieferantendaten werden an Plants by WebSphere gesendet.

  5. Plants by WebSphere bestellt den bei ihm nicht vorrätigen Artikel oder auch nicht.

    Wenn der Lieferant angibt, dass der Artikel bei ihm vorrätig ist, bestimmt die Anwendung, die der Website Plants by WebSphere zu Grunde liegt, ob der Artikel für den Kunden bestellt werden soll. Bei dem Datenaustausch kann ein Preislimit angegeben werden. Liegt der Preis des Lieferanten über diesem Limit, bestellt Plants by WebSphere den Artikel nicht. Es können auch Daten für die Entscheidungsfindung übermittelt werden, wie z. B. die voraussichtliche Lieferzeit oder das Datum, an dem der Hersteller die Produktion des Artikels einzustellen plant.

  6. Plants by WebSphere benachrichtigt seinen Kunden so schnell wie möglich über das Ergebnis der Anfrage.

    Falls der Nachschub über den Lieferanten in einem angemessenen Zeitrahmen erfolgt, muss Plants by WebSphere den Kunden nicht auf mögliche Probleme hinsichtlich der Verfügbarkeit hinweisen. Plants by WebSphere bestätigt, dass der Artikel verfügbar ist, so als befände er sich in seinem eigenen Bestand. Falls der Artikel auch beim Lieferanten vorübergehend nicht vorrätig ist oder Plants by WebSphere entschieden hat, den Artikel nicht vom Lieferanten zu kaufen, wird eine entsprechende Nachricht an den Kunden gesendet.

Web-Service-Technologien, die in diesem Beispiel verwendet werden

Dieses Szenario verwendet die folgenden Web-Service-Technologien:
XML (Extensible Markup Language)
XML wird verwendet, um den Datenaustausch zwischen Plants by WebSphere und seinem Lieferanten zu standardisieren.
Web Services for Java Platform, Enterprise Edition (Java EE)
Web Services for Java Platform, Enterprise Edition (Java EE), auch bekannt unter JSR-109, definiert, wie Java EE-Anwendungen Web-Services erstellen und auf diese zugreifen.
Java API for XML-based remote procedure call (JAX-RPC)
JAX-RPC (oder JSR-101) definiert, wie Java-Anwendungen auf Web-Services zugreifen.
JAX-WS
Das Programmiermodell JAX-WS vereinfacht die Anwendungsentwicklung durch die Unterstützung eines standardisierten annotationsbasierten Modells für die Entwicklung von Web-Service-Anwendungen und -Clients. Das Programmiermodell JAX-WS ist der Nachfolger des Programmiermodells JAX-RPC 1.1. Der Anwendungsserver unterstützt sowohl JAX-WS als auch JAX-RPC.
WSDL (Web Services Description Language)
Mit WSDL wird die vorhandene Anwendung in einen Web-Service umgewandelt. WSDL ist die Schnittstelle zwischen der zu Grunde liegenden Anwendung und anderen webbasierten Anwendungen.
SOAP
SOAP ist das Protokoll, mit dem der Web-Service mit dem Lieferanten über das Internet kommuniziert.
UDDI-Registry

Lieferanten veröffentlichen ihre Web-Services in UDDI, sodass Plants by WebSphere und andere Einzelhändler auf sie zugreifen und sie wieder verwenden können. Dies spart Entwicklungszeit, Mühe und Kosten. Außerdem sind so weniger Implementierungen derselben Anwendungen bei Plants by WebSphere und anderen Einzelhändlern erforderlich, die die Lieferanten kontaktieren müssen, um Bestandsdaten zu erfragen.

Bestimmte Editionen von WebSphere Application Server stellen eine private UDDI-Registry zur Verfügung, die in einer Intranet-Umgebung verwendet werden kann.


Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_scen_stage2
Dateiname:cwbs_scen_stage2.html