JAX-WS VS JAX-RS voor rustgevende webservice

Hallo, ik heb met JAX-WS gewerkt voor op zeep gebaseerde webservices. Nu wil ik rust gebruiken omdat rust voordelen hebben over zeep terwijl ik heb gestudeerd van hier .

Maar uit verschillende artikelen wist ik dat we ook rustgevende webservices van JAX-WS kunnen creëren. Maar de meeste mensen zeggen dat we JAX-RS moeten gebruiken in plaats van JAX-WS.

Mijn vraag is wat verschil is tussen JAX-WS RESTFULE WebService en JAX-RS (JERSEY). Wat zijn voordelen van JAX-RS over JAX-WS? En waarom zouden we JAX-RS moeten gebruiken voor rustgevende webservices?

Dank bij voorbaat.


Antwoord 1, Autoriteit 100%

TL; DR

JAX-WS is bedoeld voor op XML gebaseerde webservices zoals zeep. JAX-RS heeft niet dezelfde beperking.

JAX-WS is over het algemeen gericht op server naar serverinteracties met goed gedefinieerde contracten (WSDL’s) en meestal wanneer de service en clientzijde uit afzonderlijke groepen zijn. Het is een intensief resources, dus het is niet haalbaar voor client-to-server-interacties waarbij het netwerk of de mogelijkheden van de clientapparaat minder is dan optimaal.

JAX-RS is gericht op client naar serverinteracties, hoewel de server-naar-server in orde is. Omdat het weinig dienstverplichtingen heeft, kan het worden afgestemd op wat de behoeften van de klant zijn.

Meer info

De JAX-RS API biedt alleen code-eerste benaderingen, terwijl JAX-WS zowel code-eerst (in het algemeen niet aanbevolen) en contract-eerst met behulp van WSDL-bestanden (vaker wordt aanbevolen).

JAX-RS 2.0 introduceert de client-API, wat een slimme wrapper is voor HTTPURLCONNECTIONECTEUREN die veel meer mappingcapaciteit heeft, JAX-WS is ook een wikkel, maar de gegevens die het behandelt in de referentie-implementaties is slechts XML.

JAX-RS heeft het voordeel van het maken van API’s die eenvoudiger zijn om berichten voor te maken en te dekken in verschillende browsers en mobiele apparaten, namelijk JSON-structuur. Het introduceert het notie van een envelop niet en gebruikt HTTP ervoor. Het introduceert geen cryptografie of beveiliging, het gebruikt HTTPS ervoor.

JAX-WS Hoewel het op HTTPS loopt voor cryptografie biedt toevoegingen voor beveiliging met behulp van WS-SecurityPolicy enz. Bovendien worden contracten stevig gevestigd met WSDL en kunnen ze buiten de toepassing worden geverifieerd met ESBS zoals DataPower.

Dus wat te kiezen

JAX-WS is over het algemeen gericht op server naar serverinteracties met goed gedefinieerde contracten (WSDL’s) en meestal wanneer de service en clientzijde uit afzonderlijke groepen zijn. Het is een intensief resources, dus het is niet haalbaar voor client-to-server-interacties waarbij het netwerk of de mogelijkheden van de clientapparaat minder is dan optimaal.

JAX-RS is gericht op client naar serverinteracties, hoewel de server-naar-server in orde is. De enige contractuele verplichting tussen een klant en server is het bericht en de aanvraagkoppen. Omdat het weinig dienstverplichtingen heeft, kan het worden afgestemd op wat de behoeften van de klant zijn.

Het gebruik van een rustgevende service-API’s is verwant aan het doen van meta-programmering zoals Ruby en Python, die problemen oploopt op looptijd, omdat er geen gedefinieerd schema is overeengekomen en technisch gehandhaafd door de twee kanten. Als zodanig roep ik overal geen rustgevende diensten aan, maar ik zou het aanraden als ik de controle over de twee kanten had die normaal gebeurt wanneer je een webtoepassing bouwt die statische HTML / CSS / JS en gesprekken met een rustgevende server voor de gegevens.

Other episodes