Проблема с приведением класса во время пост-запроса - PullRequest
0 голосов
/ 15 сентября 2018
    try {

        def contactId= "9999"
        def phoneNumber = 213213214
        def postObj = [PhoneNumber: phoneNumber,
                       ContactID  : contactId]

        def queryString = ["processAgainstExisting": true]

        def params = ["restVerb"     : "POST",
                      "postObj"      : postObj,

                      "path"         : "/contact/$contactId/PhoneNumber",
                      "query"        : queryString]

        def response = new PostRequest("Some url")
                .setParams(params)
                .execute()

        // check HttpResponse status code
        if (response.status != 200) {
            throw new RuntimeException(response.statusLine)
        }

} catch (Throwable e) {
    throw e
}

связался с постом и столкнулся с этой проблемой. Пойман: java.lang.ClassCastException: java.util.LinkedHashMap не может быть приведен к java.lang.String

Есть ли другой способ решить эту проблему?

1 Ответ

0 голосов
/ 15 сентября 2018

Кажется, что линия

throw new RuntimeException(response.statusLine)

вызывает исключение, не так ли?

Попробуйте

throw new RuntimeException(response.statusLine.toString())

statusLine не является String, но RuntimeException требуется сообщение String для конструктора.

https://hc.apache.org/httpcomponents-core-ga/httpcore/apidocs/org/apache/http/StatusLine.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...