Acabo de escuchar acerca de Apache Wink, y me preguntaba ¿qué diferencias había comparado a Jersey o JBoss RESTEasy. ¿Qué se puede hacer en uno que los otros dos no?

Hemos estado utilizando Jersey para algunos de nuestros proyectos internos principalmente por su simplicidad, pero realmente no puedo entender qué hace a estos otros dos mejor que me gustaría considerar la posibilidad de cambiar. ¿Alguien tiene alguna en casos de uso para el que nicho de cada uno de estos rellenos?

InformationsquelleAutor Nick Klauer | 2010-08-11

4 Comentarios

  1. 114

    JAX-RS Implementaciones

    Jersey

    • Implementación De Referencia De
    • Generalmente la mayoría de vanguardia
    • Admite cierto asincrónica (es decir, web sockets, etc…) conexiones a través de Atmósfera o la versión 2.0.
    • Tiene soporte para la Primavera y el estándar de inyección de contenedores (es decir, @Inject).
    • Glassfish haces de ella.
    • Mucho más modular que el otro JAX-RS proyectos.
    • Tiene una patada en el culo URI Generador de
    • No requiere necesariamente de un contenedor de servlets.
    • Grizzly apoyo
    • Netty de apoyo (muy temprano).
    • Swagger apoyo
    • Especie de falta de OAuth 2.0 . Vas a tener que utilizar otras bibliotecas.
    • Algunos MVC apoyo a través de Viewables
    • Alojado en java.net (un signo de menos como el sitio es terriblemente lento a veces).
    • De concesión de licencias se basa en CCDL 1.1 y la GPL v2. Por favor, asegúrese de que usted echa Jersey de licencia antes de utilizar para uso comercial

    https://jersey.github.io/license.html

    RestEasy

    Apache Wink (nunca usado)

    • Tengo ni idea de por qué este proyecto existe.
    • Supuestamente su alto rendimiento enfocado.
    • Tiene un cliente integrado en la parte superior de HttpUrlConnection (que es un signo de menos… debe ser conectables como La Primavera RestTemplate).
    • Básicamente Guiño fue desarrollado en casa en las empresas y luego se da a Apache.
    • Requiere de un contenedor de servlets.

    Restlet

    • Muy potente pero muy complicado
    • Proporciona un bajo nivel de apoyo de REPOSO
    • No requiere de un contenedor de servlet

    Apache CXF

    • Interesantes WADL apoyo.
    • Reutilización y /o combinar JAX-RS w/JAX-WS
    • De apoyo a la seguridad
    • De integración w/Primavera aunque el tipo de desagradables
    • Supone Autogeneración de cliente talones

    Otros RPC-como los sistemas

    Colas De Mensajes

    RPC asincrónica

    Mi humilde opinión

    Sé que el OP preguntó por el RESTO, pero si esto es para la comunicación interna considerar seriamente el uso de una cola de mensajes o algún otro RPC asincrónica (de Conseguir) en lugar de la tradicional de DESCANSO si sus requisitos coinciden con los de los sistemas.

    Si debe ser clásico HTTP RESTO (externo) me volvería a escoger entre cualquiera de RestEasy o Jersey como una mayor parte de la cuota de la mente se pone en los dos proyectos.

    Véase también: Resto de los clientes para Java?

    • Yo no recomiendo Jersey (que sólo se trató de v 2.5.1) un poco. Es muy difícil de configurar y de instalación en el primer lugar.
    • Puede usted explicar por qué Restlet es complicado desde su punto de vista. Eche un vistazo a los primeros pasos en el ejemplo: restlet.org/learn/guide/2.2/introduction/first-steps/…
    • Tal vez «complicado» no es la palabra correcta y restlet también ha evolucionado. Supongo que cuando miré a restlet parece ser la forma más cosas que la jaxrs. Probablemente es el más completo de descanso servidor de la biblioteca de ahí la «complicada».
    • Tiene un contexto mucho más amplio de DESCANSO/HTTP alcance de la operación, 6 ediciones, 44 ediciones y ha sido de alrededor desde 2005, pero su esencia org.restlet.jar es muy compacto (cero dependencia), unificada cliente y el servidor. Eche un vistazo a nuestros primeros pasos ejemplo, para ver cómo usted puede comenzar en 5 minutos, sin tener que configurar cualquier contenedor de Servlets o de configuración XML. Pero aún así, usted puede crecer/escala de muy lejos: restlet.com/discover/firststeps
  2. 15

    La hora de elegir la aplicación a utilizar tenga esto en mente: si intenta implementar un Jersey servicio web JBOSS 7.1, no va a funcionar. Este error se producirá:

    Only one JAX-RS Application Class allowed

    Esto es porque el RESTO de Fácil viene con JBOSS como el valor predeterminado de JAX-RS aplicación. Así, JBOSS, decidir que la aplicación que desea utilizar y no cargar otro JAX-RS aplicación (como la Jersey). Con el fin de solucionar este problema, es necesario agregar las siguientes líneas a su web.xml archivo:

      <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

    • Esta es una información muy útil (aunque responde a una pregunta distinta).
    • Mi conjetura es (mucho tiempo desde que he trabajado con JBOSS cosas) es que se puede excluir el de JAX-RS en JBOSS. O usted puede excluir de su pom. Línea de base: este es un problema que se puede evitar.
  3. 1

    Si vas a utilizar JBoss 7.x debe utilizar RestEasy, ‘causa que está integrado en JBoss. El uso de Jersey con JBoss 7.x, tienes que deshabilitar RestEasy y es complicado!

    • Véase la respuesta por Tihomir Meščić.

Dejar respuesta

Please enter your comment!
Please enter your name here