当我在Jax-rs中收到BadRequestException时,如何获取请求的URL?

时间:2014-01-21 18:33:27

标签: jax-rs java-ee-7 jersey-client

我在使用Jersey 2时得到BadRequestException,我想获取请求中使用的URL,并在捕获异常时将其打印在日志中。

BadRequestException对象上是否有属性/方法组合将返回URL?我没有在JavaDocs中看到它,但它可能有一个与“URL”无关的名称。

1 个答案:

答案 0 :(得分:2)

您无法从BadRequestException获取URI。但是你可以从你在WebTarget调用请求来获取它:

WebTarget target = ClientBuilder.newClient().target("http://localhost");

try {
    String result = target.request().get(String.class);
} catch (BadRequestException bre) {
    // get the URI
    target.getUri();
}

如果您不想使用try-catch块:

Response response = target.request().get();

if (response.getStatus() == 200) {
    // OK
} else {
    // Handle other state.
}