Invalid JSON in Playframework 2.1 Test POST Reques

2019-07-06 15:27发布

I am trying to test a POST route (on Playframework 2.1/ Java) and keep getting Bad Request - Invalid JSON response.

Please let me know what I am doing wrong. My Test code is below.

 running(fakeApplication(), new Runnable() {
                        public void run() {

            Map map = new HashMap();
            map.put("key1", "val1");
            map.put("key2", 2);
            map.put("key3", true);
            JsonNode df= Json.toJson(map);

            Result result = route
                    (fakeRequest(POST, "/item").withHeader("Content-Type", "application/json").withSession(AccountTest.USER_KEY, "some key")
                            .withSession(AccountTest.PROVIDER_KEY, "facebook").withJsonBody(df));

            Logger.debug("result is "  + contentAsString(result));
            System.out.println("result is "  + contentAsString(result));

                assertThat(result).isNotNull();

//                assertThat(result).isNotNull();
//                assertThat(result).isEqualTo("hello");
            }

        });

1条回答
劫难
2楼-- · 2019-07-06 16:06

This a documented bug in Play 2.1 (Java). Please refer to the bug here and the git-pull request https://play.lighthouseapp.com/projects/82401/tickets/984-adding-json-body-to-play-21-java-returns-invalid-json-message#ticket-984-8

查看更多
登录 后发表回答