【问题标题】:How to send JSON Object from POSTMAN to Restful webservices如何将 JSON 对象从 POSTMAN 发送到 Restful Web 服务
【发布时间】:2016-12-22 15:41:57
【问题描述】:

我正在尝试将 json 从 POSTMAN 发送到 RESTful 网络服务。我已经按照本教程 url 通过 POSTMAN 发送 json。

我的网址:

http://localhost:8080/myWebService/rest/dataInsert/insert

我的服务方法:

@POST
    @Path("/insert")
    @Consumes(MediaType.APPLICATION_JSON)
    public String insertData(JSONObject jsonlist) throws UnknownHostException;

我的暗示:

@Override
    public String insertData(JSONObject jsonlist) throws UnknownHostException {
        System.out.println(jsonlist);
        insertDataDao.insertData(jsonlist);
        return "SUCCESS";
    }

我的 DAO:

public  String insertData(JSONObject jsonlist) throws UnknownHostException{
        System.out.println(jsonlist);
        MongoConnection mongoconnection = new MongoConnection();
        MongoClient mongoclient = mongoconnection.getMongoClient();

        MongoDatabase db = mongoclient.getDatabase("mydb");
        MongoCollection<Document> col = db.getCollection("col");

        String jsonString = jsonlist.toString();
        System.out.println(jsonString);

        Document doc = Document.parse(jsonString);
         col.insertOne(doc);
        System.out.println("Inserted Successfully !!!");
        return "SUCCESS";

    }

但我面临以下异常:

JBWEB000236:Servlet CXFServlet 的 Servlet.service() 引发异常:java.lang.NoSuchMethodError: javax.ws.rs.InternalServerErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/ Response$Status;)Ljavax/ws/rs/core/Response;

我无法解决此问题。谁能帮我解决这个问题...

【问题讨论】:

  • 您的服务使用的是哪个版本的 cxf
  • 我使用的是 2.7.13 版本的 cxf
  • 邮递员电话没有问题。你能在你提出请求的地方添加一些方法的代码吗?并且该方法返回类型应该是响应。 @dev777
  • 您的编译时间 Jax-rs 实现与应用程序运行时不同。检查您的 JBOSS 服务器使用的是哪个版本的 CXF。

标签: java mongodb web-services rest


【解决方案1】:

第 1 步:打开 postman 输入您的 api url 并选择帖子类型。

第 2 步:转到 Headers 按钮类型(“Content-Type”)第一个输入框并在第二个输入框中输入“application/json”,它会给出自动完成建议

第 3 步:转到 Body 按钮并选择 raw 单选按钮并在同一 raw 右侧的下拉菜单中选择 JSON (application/json)。

第 4 步:输入您的 json 类学生对象

{
  "name": "dummy",
  "marks": "26"
}

【讨论】:

  • 是的。我做了同样的事情。但我无法将此 json 数据发送到 web 服务。 OnClick POSTMAN 中的发送按钮,我遇到了上面提到的问题
【解决方案2】:

POSTMAN V5.2.0 测试

网址:http://localhost:8080/mail/user/register/

JSON 数据:

{"name":"John","firstName":"Smith","lastName":"MT","email":"johnsmt@yahoo.com"}

步骤:

  1. 添加标题
key: content-type
value: application/json
  1. 点击粘贴以上JSON数据BODY -> raw -> JSON (application/json)

  2. 点击发送,查看 JSON/XML 格式的响应文本......

注意:

  1. 用户在 URL 中引用您的 REST Spring 控制器
@RestController

@RequestMapping("/user")
  1. 注册在 URL 中引用
@RequestMapping(value = "/register", method = RequestMethod.POST, produces="application/json", consumes="application/json")

【讨论】:

    【解决方案3】:

    我遇到了同样的问题,通过先导入 jersey.json 依赖项然后将其添加到 web.xml 中解决了这个问题

    <init-param>
            <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
            <param-value>true</param-value>
        </init-param>
    

    【讨论】:

      猜你喜欢
      • 2016-01-30
      • 1970-01-01
      • 2014-03-23
      • 2014-11-25
      • 2014-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多