带有Websphere Liberty Profile 8.5的JAX-RS 1.1中的@QueryParam没有收到价值

时间:2015-05-26 15:15:00

标签: jax-rs websphere-liberty

我使用以下代码在web.xml中创建没有配置的WebService,如下所述:How to set up JAX-RS Application using annotations only (no web.xml)?

@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库,关闭了服务器,然后打开并添加了库(同一个库),它开始工作。在它之前,我尝试执行干净,构建,没有任何帮助。如果有人能够解释它发生了什么以及为什么会发生,我会接受它作为答案。谢谢

1 个答案:

答案 0 :(得分:0)

您的查询中没有“key”参数。将其更改为:

http://localhost:9081/MyRestApplication/host/merge?key=xyz123