Jakarta RESTful Web Services
Bei den Jakarta RESTful Web Services (JAX-RS; früher: Java API for RESTful Web Services) handelt es sich um die Spezifikation einer Programmierschnittstelle (API) der Programmiersprache Java, die die Verwendung des Software-Architekturstils Representational State Transfer (REST) im Rahmen von Webservices ermöglicht und vereinheitlicht.
Jakarta RESTful Web Services (JAX-RS) | |
---|---|
Basisdaten
| |
Entwickler | Eclipse Foundation |
Aktuelle Version | 4.0.0[1] (2. Mai 2024) |
Betriebssystem | Cross-Plattform |
Programmiersprache | Java |
Kategorie | Framework |
Lizenz | Eclipse Foundation Specification License |
jakarta.ee/specifications/restful-ws/3.0 |
Die in der Spezifikation beschriebenen Funktionalitäten wurden von einem Unternehmenskonsortium rund um Sun Microsystems sowie weiteren unabhängigen Parteien im Rahmen des Java Community Process erarbeitet und im Java Specification Request 311 verabschiedet.[2]
Wie auch andere Programmierschnittstellen der Jakarta EE (JEE) benutzt JAX-RS Annotationen, um die Entwicklung und das Deployment von Webservice-Clients und Service-Endpunkten zu vereinfachen.
Geschichte
BearbeitenAb Java 5 wurde Version 1.0 unterstützt.[3] Ab der Version 1.1 wurde JAX-RS ein offizieller Teil der Java Platform, Enterprise Edition 6.[4]
Im Januar 2011 begann der Java Community Process mit Gründung der Arbeitsgruppe zu JAX-RS 2.0: Java Specification Request 339: The Java API for RESTful Web Services.[5] Die wichtigsten geplanten Neuerungen waren u. a. eine einheitliche Client-API sowie Unterstützung für Hypermedia nach dem HATEOAS-Prinzip. Die Veröffentlichung war ursprünglich für das Frühjahr 2012 geplant und sollte in die Version 7 der Java Platform, Enterprise Edition einfließen. Mit dem Erscheinen der JEE 7 am 12. Mai 2013 wurde auch JAX-RS in der Version 2.0 veröffentlicht.[4]
Im September 2020 wurde die Version 3.0 der Jakarta RESTful Web Services Spezifikation publiziert.[6]
Implementierungen
BearbeitenDie Referenzimplementierung von JAX-RS stellt Eclipse Jersey dar. Jersey 1.0.x basiert auf Version 1.0 und Jersey 1.1.x basiert auf Version 1.1 der Spezifikation. Jersey 2.0/2.1 unterstützt JAX-RS 2.0, Jersey 2.2+ unterstützt JAX-RS 2.1.
Es existiert eine Vielzahl von weiteren Implementierungen von JAX-RS[7]
- Restlet
- RESTEasy ein JBoss Projekt von Red Hat
- JAX-RS-Erweiterung von Apache CXF.
Siehe auch
BearbeitenWeblinks
BearbeitenEinzelnachweise
Bearbeiten- ↑ jakarta.ee.
- ↑ 2 RESTful Web Services mit JAX-RS. 25. März 2024, abgerufen am 25. März 2024 (deutsch).
- ↑ Christian Kirsch: Java-Schnittstelle für REST fertiggestellt. In: IX – Magazin für professionelle Informationstechnik. 13. Oktober 2008, abgerufen am 25. März 2024.
- ↑ a b Thilo Frotscher: Rund gemacht. In: entwickler.de. Februar 2013, abgerufen am 25. März 2024 (deutsch).
- ↑ JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services
- ↑ Jakarta RESTful Web Services. Abgerufen am 6. März 2021.
- ↑ John Velandia, Sonia Rios,Holman Bolivar,Juan Vanzina, Nicolas Almanzar: JAX-RS Implementations: A Performance Comparison. Abgerufen am 6. März 2021 (englisch).