2015-10-09 6 views
0

При использовании поддержки HATEOAS от Spring мне очень нравится AnnotationMappingDiscoverer, который помогает избежать путей ресурсов REST с жестким кодированием в тестах. С его помощью, я могу сделать что-то вродеЕсть что-нибудь вроде spring-hateoas 'AnnotationMappingDiscoverer для RESTEasy?

discoverer = new AnnotationMappingDiscoverer(RequestMapping.class); 
Method method = MyController.class.getMethod("myResourceMethod", params); 
String path = discoverer.getMapping(method); 

И затем использовать его в качестве path пути ресурсов в тестах. Гораздо лучше, чем пути жесткого кодирования в тестах, которые необходимо синхронизировать с аннотациями класса и метода контроллера.

Есть ли что-то подобное для RESTEasy?

ответ

1

Вы можете использовать UriBuilder:

Предполагая, что следующий класс:

@Path("persons") 
public class PersonResource { 

    @Path("/{id}") 
    public Response get(@PathParam("id") String id) { 
     // 
    } 

} 

Вы получили бы этот путь:

URI path = UriBuilder.fromResource(PersonResource.class) 
        .path(PersonResource.class, "get") 
        .build("4711"); 
// path = /persons/4711 

 Смежные вопросы

  • Нет связанных вопросов^_^