2011-01-06 7 views
1

Kann jemand bestätigen oder für mich klarstellen:Java EE Web-Anwendungen vs Web Service

Von dem, was ich sagen kann, Java EE Web-Anwendungen bestehen aus einem Servlet und/oder JSP dynamische Web-Seite zurückgetrieben in dem HTTP zugeführt wird Antwort, ausgelöst durch den Java EE Server, der eine HTTP GET oder POST Anfrage erhält.

Soweit ich das beurteilen kann, verwenden Java EE-Webdienste auch Servlets als Web-Tier-Komponenten, jedoch empfängt ein WS-Servlet eine SOAP-Nachricht und validiert den Inhalt dieser Nachrichten mit welcher WSDL auch immer das Servlet WARED. Die Antwort wird ebenfalls in SOAP verpackt und zurück an den Anforderer gesendet.

Also, aus was ich sagen kann, verwenden sowohl Java EE Web-Anwendungen und WSes Servlets als Web-Komponenten, mit dem einzigen Unterschied das verwendete Protokoll (Raw HTTP vs SOAP, die eine Erweiterung von HTTP ist) .

Das ist das Beste, was ich mir vorstellen kann - habe ich recht? Total falsch? Schließen?

+0

Ihre Frage ist nicht klar –

Antwort

3

Der größte Unterschied besteht nicht darin, wie sie geliefert werden, sondern darin, wie sie verwendet werden. Web-Anwendungen sind auf Webbrowser ausgerichtet und dienen in der Regel vollständigen HTML-basierten Anwendungen. Web-Dienste hingegen dienen dazu, Rohdaten für eine andere Anwendung zu liefern, die konsumiert werden soll.

0

Sie haben Recht, und Servlets sind nur ein Mittel, um den Code in einem gegebenen Webapp-Kontext mit einem URI-Pfad zu verbinden. Ob das Servlet HTML oder WS bereitstellt, ist für den Webapp-Container bedeutungslos, es werden nur Daten mit einem MIME-Typ zurückgesendet.

Sie könnten das gleiche auch mit einem Filter unter Servlet 2.3 und späteren Spezifikationen verwalten. Spring tut dies und hat eine sehr robuste Möglichkeit, die Filterkette zu ergänzen, um sie zu unterstützen.