使用javaee-api使用POST API调用

问题描述 投票:0回答:1

[我正在尝试使用包裹有Entity.json的Plain Old Java Object打POST呼叫。我正在使用以下依赖项:

<dependency>
  <groupId>javax</groupId>
  <artifactId>javaee-api</artifactId>
  <version>7.0</version>
  <scope>provided</scope>
</dependency>

这是我的POST功能的样子:

public String testPostCall(TestParams params) {
        return target.request(MediaType.APPLICATION_JSON)
                     .accept(MediaType.APPLICATION_JSON)
                     .post(Entity.json(params), String.class);
    }

我认为问题出在Entity.json(params)中。我得到的错误是:

javax.ws.rs.ProcessingException: No message body writer has been found for class TestParams

这是我的TestParams类的样子:

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class TestParams {

    private String message;

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

是否缺少将POJO类TestParams转换为JSON的依赖项?还是我使用了错误的注释?我想使用一个主要用于POST调用的API。任何帮助将不胜感激!

java java-ee-7
1个回答
0
投票

我想出了如何从this link将POJO转换为JSON,然后使用以下代码:

© www.soinside.com 2019 - 2024. All rights reserved.