用于将rest urls转换为jax-rs方法的Java库

时间:2014-07-23 00:26:56

标签: java routing jax-rs

我有一些jax-rs资源,例如

@Path("/api/v1/ping")
public class PingResource {

    @GET
    public String ping(@QueryParam("name") String name) {
        return "pong: " + name;
    }

}

我想知道网址如何映射到资源方法,例如

public class ResourceMethod {
    Method method;
    Object[] arguments;
}

public interface UrlToResourceMapper {
    ResourceMethod mapToResource(HttpServletRequest request);
}

UrlToResourceMapper mapper = new UrlToResourceMapperImpl(Arrays.asList(PingResource.class));
ResourceMethod resourceMethod = mapper.mapToResource(new RequestImpl("GET", "http://host/api/v1/ping?name=josh", ...));
assertEquals(PingResource.class.getMethod("ping"), resourceMethod.method);
assertEquals(1, resourceMethod.arguments.length);
assertEquals("josh", (String)resourceMethod.arguments[0]);

是否有一个实现类似UrlToResourceMapper接口的库?例如泽西岛内有一个班级吗?到目前为止我发现的所有内容要么调用该方法,要么只在执行请求的上下文中访问该方法。我不想调用该方法,我不想提交请求(例如,我不希望调用过滤器)。我只想要一个库,告诉我给定请求的调用结果。

0 个答案:

没有答案