Próbuję wykonać proste żądanie HTTP POST i nie mam pojęcia, dlaczego poniższe działanie się nie udaje. Próbowałem postępować zgodnie z przykładami here i nie widzę, gdzie idę źle.POST z HTTPBuilder -> NullPointerException?
Wyjątek
java.lang.NullPointerException
at groovyx.net.http.HTTPBuilder$RequestConfigDelegate.setBody(HTTPBuilder.java:1131)
...
Kod
def List<String> search(String query, int maxResults)
{
def http = new HTTPBuilder("mywebsite")
http.request(POST) {
uri.path = '/search/'
body = [string1: "", query: "test"]
requestContentType = URLENC
headers.'User-Agent' = 'Mozilla/5.0 Ubuntu/8.10 Firefox/3.0.4'
response.success = { resp, InputStreamReader reader ->
assert resp.statusLine.statusCode == 200
String data = reader.readLines().join()
println data
}
}
[]
}
Ten stały to dla mnie. Używanie 'send URLENC, [string1:" ", string2:" heroes "]' również będzie działało, ale utrudnia test jednostkowy podczas kpienia z HTTPBuilder. –