使用POSTMAN将POST请求发送到Java REST API并在xml响应中获取空值

时间:2019-10-21 08:18:41

标签: java xml rest api postman

我正在用Java创建REST服务,现在我正在构建具有2个参数的post方法,该方法必须在postman中作为xml输入(用于测试),并在Java中获得xml作为响应并将其插入数据库中。

对于初学者来说,我试图使用键和值将值添加为POSTMAN中的“查询参数”。响应为200,但xml为CUI = null Mesaj = null

即使您在邮递员中为两个键都添加了值,两个值都为空。

如何查看这些值?这是Java代码:

@Stateless
@Path("/cererepost")
public class HelloWorldResource {
Resp x = new Resp();
@EJB
private NameStorageBean nameStorage;
/**
 * Retrieves representation of an instance of    helloworld.HelloWorldResource
 * @return an instance of java.lang.String
 */
@POST
@Produces("application/xml")
@Consumes(MediaType.APPLICATION_XML)
public Response postMsg(@PathParam("cui") String cui,    @PathParam("mesaj") String mesaj)  {



    String xmlString = "CUI=" + cui + " Mesaj=" + mesaj;
    Response response = Response.status(200).type(MediaType.TEXT_XML).entity(xmlString).build();
    return response;

}

}

我应该修改什么,以便可以在postman生成的xml中的post中看到发送的参数值?

预先感谢

1 个答案:

答案 0 :(得分:1)

@PathParam("cui") String cui 此行显示客户端的值应作为路径参数而不是查询字符串传递,如下所示:

正确: /cererepost/some_value

如果要在服务器端获取它们作为查询字符串参数,请将@PathParam("cui")更改为@QueryParam("cui")

要了解query stringpath variables之间的区别,请关注this post