Ich habe gerade von Apache Wink gehört und mich gefragt, welche Unterschiede es zu Jersey oder JBoss RESTEasy hat . Was kann man in einem tun, was die anderen beiden nicht können?
Wir haben Jersey für einige unserer internen Projekte verwendet, hauptsächlich wegen seiner Einfachheit, aber ich kann nicht wirklich herausfinden, was diese beiden anderen besser macht, als ich einen Wechsel in Betracht ziehen würde. Hat jemand Anwendungsfälle für welche Nische jede dieser Füllungen?
Antworten:
JAX-RS-Implementierungen
Jersey
https://jersey.github.io/license.html
Ruhig schlafen
Apache Wink
(nie benutzt)Restlet
Apache CXF
Andere RPC-ähnliche Systeme
Nachrichtenwarteschlangen
Asynchroner RPC
Meine bescheidene Meinung
Ich weiß, dass das OP nach REST gefragt hat, aber wenn dies für die interne Kommunikation vorgesehen ist, sollten Sie ernsthaft in Betracht ziehen, entweder eine Nachrichtenwarteschlange oder einen anderen asynchronen RPC (Finagle) anstelle von herkömmlichem REST zu verwenden, wenn Ihre Anforderungen diesen Systemen entsprechen.
Wenn es sich um klassisches HTTP-REST (extern) handeln muss, würde ich zwischen RestEasy und Jersey wählen, da ein Großteil des Mind- Shares in diese beiden Projekte fließt .
Siehe auch: Rest Clients für Java?
quelle
Beachten Sie bei der Auswahl der zu verwendenden Implementierung Folgendes: Wenn Sie versuchen, einen Jersey-Webdienst für JBOSS 7.1 bereitzustellen, funktioniert dies nicht. Dieser Fehler tritt auf:
Only one JAX-RS Application Class allowed
Dies liegt daran, dass REST Easy mit JBOSS als Standard-JAX-RS-Implementierung geliefert wird. JBOSS entscheidet also, dass dies die Implementierung ist, die Sie verwenden möchten, und lädt keine weitere JAX-RS-Implementierung (wie Jersey). Um dies zu beheben, müssen Sie Ihrer web.xml-Datei die folgenden Zeilen hinzufügen:
<context-param> <param-name>resteasy.scan</param-name> <param-value>false</param-value> </context-param> <context-param> <param-name>resteasy.scan.providers</param-name> <param-value>false</param-value> </context-param> <context-param> <param-name>resteasy.scan.resources</param-name> <param-value>false</param-value> </context-param>
Link: https://community.jboss.org/message/744530
quelle
Eine meiner Lieblings- Jersey- Erweiterungen ist Viewables. Mit Viewables können Sie Ihre Daten einfach an eine JSP-Seite binden, um eine echte MVC-Architektur (Model-View-Controller) zu implementieren:
quelle
Wenn Sie JBoss 7.x verwenden möchten, müssen Sie RestEasy verwenden, da es in JBoss integriert ist. Um Jersey mit JBoss 7.x zu verwenden, müssen Sie RestEasy deaktivieren und es ist kompliziert!
quelle