Bonjour,
Ton tutoriel est intéressant. Personnellement j'utilise directement Restlet avec son extension JAX-RS et Spring.
J'ai une seule critique (qui vaut souvent pour les exemples JAX-RS) : il manque une illustration de l'utilisation des "Provider". Concrètement, dans l'exemple "registerUser", au lieu de prendre en paramètre une chaîne et de retourner un object Response, c'est de travailler directement avec les objecs du domaine :
User registerUser(User pUser) { ... }
et le provider de lecture
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
@Provider
@Consumes(MediaType.APPLICATION_XML)
public class SimpleXMLMessageBodyReader implements MessageBodyReader<Object> {
public boolean isReadable(final Class<?> pType, final Type pGenericType, final Annotation[] pAnnotations, final MediaType pMediaType) {
// si type est User et si media es XML
...
}
public Object readFrom(final Class<Object> pType, final Type pGenericType, final Annotation[] pAnnotations, final MediaType pMediaType,
final MultivaluedMap<String, String> pHeaders, final InputStream pInputStream) throws IOException {
// lecture du XML en USer
User user = new User();
...
return user;
}
} |
L'avantage est de faire une ressource REST utilisable pour plusieurs types MIME et de déléguer la sérialisation/désérialisation à des objets dédiés.
Mais encore une fois, bravo pour ce tutoriel.
Partager