Я пишу несколько методов REST для получения данных из внешнего источника. Однако, когда я добавляю аннотацию get, я получаю сообщение об ошибке, в котором говорится, что «Все параметры в операции GET должны быть аннотированы аннотациями параметров». Я что-то пропустил? Мне не нужно аннотировать, потому что я не получаю / не обрабатываю get, а вместо этого запрашиваю его из другого места для обработки здесь? Код ниже.
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
@GET
@Consumes("application/json")
public JsonObject getData(Calendar date) {
year = date.get(Calendar.YEAR);
month = date.get(Calendar.MONTH) + 1; //Month is 0 based in Cal, but we need 1 based
day = date.get(Calendar.DATE);
String strDate = String.format("{0}-{1}-{2}", year, (month < 10 ? "0" +
Integer.toString(month) : month),
(day < 10 ? "0" + Integer.toString(day) : day))
int returnValue = 0;
JsonObject jsonResponse = null;
try (CloseableHttpClient client = HttpClients.createDefault()) {
URI uri = new URIBuilder().setScheme("http").setHost(config.getURL())
.setPath("/data/" + strDate).build();
HttpGet get = new HttpGet(uri);
HttpResponse httpResp = client.execute(get);
returnValue = httpResp.getStatusLine().getStatusCode();
HttpEntity entity = httpResp.getEntity();
jsonResponse = entityToJson(entity.getContent(), returnValue, false);
} catch (IOException e) {
e.printStackTrace();
} catch (URISyntaxException e) {
e.printStackTrace();
}
return jsonResponse;
}
Спасибо за любую помощь.