Я использую следующий код для создания WebService без конфигурации в web.xml, как описано здесь: How to set up JAX-RS Application using annotations only (no web.xml)?@QueryParam в JAX-RS 1.1 с Websphere Liberty Profile 8.5 не получает значение
@ApplicationPath("/host")
@Path("/merge")
public class FormProvider extends Application {
@GET
@Produces(MediaType.APPLICATION_JSON)
public String getFormByKey(@QueryParam("key") String key) {
Form form = DB.getFormByKey(key);
Gson gson = new GsonBuilder()
.setPrettyPrinting()
.create();
String json = gson.toJson(form);
return json;
}
}
И используя следующий URL для вызова WebService с параметрами:
http://localhost:9081/MyRestApplication/host/merge?key=xyz123
Webservice быть вызвана, но свойство key
остается пустым, что я делаю неправильно? Спасибо.
Обновление: Оно начало работать. Я не могу объяснить, но я просто удалил библиотеку jax-rs, выключил сервер, а затем включил и добавил библиотеку (ту же библиотеку), и она начала работать. До этого я старался выполнять чистую, строю, ничего не помогал. Если кто-то сможет объяснить, что и почему это произошло, я буду принимать его в качестве ответа. Спасибо.
Извините, я проверил с ключом и с 'test', и в обоих случаях он не работал. Просто скопировал здесь неправильный код, исправит его. – Anatoly