37 votes

Infrastructure Java EE des services Web REST / JSON

Je construis un service Web. Je préférerais plutôt REST / JSON que SOAP. Quelqu'un peut-il me dire quel est le meilleur framework Java EE pour cela? Merci!

63voto

Blaise Doughan Points 75613

JAX-RS est la Java EE standard pour les services web RESTful. Pour un exemple, consultez mon blog:

L'exemple montre des messages XML. Si vous voulez seulement les messages JSON changer le MediaType:

@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("{id}")
public Customer read(@PathParam("id") long id) {
    return entityManager.find(Customer.class, id);
}

À l'appui de deux JSON et XML des messages d'effectuer les opérations suivantes:

@GET
@Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
@Path("{id}")
public Customer read(@PathParam("id") long id) {
    return entityManager.find(Customer.class, id);
}

7voto

Mike Baranczak Points 4425

Pour un REPOS cadre, je vous recommande de JAX-RS (c'est une partie de Java EE 6 API, ou vous pouvez l'utiliser sur son propre). Jersey est l'implémentation de référence, mais il en existe d'autres.

Pour JSON de la manipulation, vous avez deux options:

  1. Utilisez le Maillot-JSON extension, avec les annotations JAXB sur vos classes d'entités.

  2. Jackson. La configuration sera un peu plus de travail au début, mais je l'ai trouvé plus facile de traiter avec dans le long terme.

4voto

Jerome Louvel Points 2300

Je suggérerais également de jeter un coup d'œil à Restlet Framework, qui prend en charge JAX-RS mais dispose de beaucoup plus de fonctionnalités grâce à son API Restlet (côté client et côté serveur). Il est également disponible en 5 éditions cohérentes pour Java SE, Java EE, GWT, GAE et Android!

Meilleures salutations,

Jérôme

Restlet ~ Fondateur et responsable technique

0voto

jbrendel Points 1068

Pour une approche différente pour les services web RESTful, jetez un oeil à RESTx. L'accent y est sur des composants réutilisables et la possibilité de créer rapidement de nouveaux services web, simplement en publiant des configurations (ou en remplissant un petit formulaire dans un navigateur) sur un serveur en cours d'exécution.

De cette façon, vous pouvez rapidement créer de nombreuses variations d'un même service. Par exemple, toutes les posté configuration d'un "composant de base de données" pourrait contenir une requête différente. L'utilisateur de l'résultant de service web n'a pas besoin de savoir à propos de la composante sous-jacente et les paramètres spécifiques que vous avez utilisé pour créer le nouveau service web RESTful.

Si vous avez besoin d'écrire vos propres composants, vous pouvez le faire en Java, Python ou JavaScript côté serveur.

Le site a un lien vers une vie de démonstration ainsi.

0voto

yegor256 Points 21737

Jetez un coup d’œil à ReXSL , l’ infrastructure Web basée sur JAX-RS, qui intègre à la fois votre API et votre interface Web.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X