GET を介してパラメーターを REST メソッドに渡そうとしています。
@GET
@Path("{id}")
public Response getUser(@PathParam("id") String id) {
Query qry = em.createQuery("from User c WHERE id = :user_id");
qry.setParameter("user_id", id);
List<User> results = qry.getResultList();
if(results.size() > 0) {
return Response.ok(results.get(0),MediaType.APPLICATION_JSON_TYPE).build();
} else {
return Response.serverError().status(Response.Status.NOT_FOUND).build();
}
}
Rest Client を介して次のように呼び出す場合:
client = ClientBuilder.newClient();
Response response = client.target(TestPortProvider.generateURL("/user")+"/abc").request().get(Response.class);
その後、メソッドが呼び出されますが、パラメーターは空です。"abc"
GET URL からを削除すると、メソッドは呼び出されません。また、削除し@Path("{id}")
ても機能しません。パラメータがあるように見えますが、理由もなく空です。誰かが問題を解決するのを手伝ってくれるかもしれません。
敬具