원래 요청이 xml 인 Restful WS에 POST 요청을 보내려고하므로 응답도 마찬가지입니다.Groovy httpBuilder 기본 인증을 사용하는 POST XML
기본 인증도 보내야합니다. 처음에는 Classes와 관련하여 문제가 발생하지 않았으며 고맙게도 해결하기 위해 6 개의 항아리가 필요했습니다. 잘못된 요청이 POST 요청을 좋아하지 않는처럼
는 소리 : 잡았다 : groovyx.net.http.HttpResponseException
는 이제 다음을 점점 계속. RESTClient를 포함하여 여러 가지 방법을 시도해 봤지만 파일을 전달하거나 문자열 var로 원시 xml 형식으로 요청을 위임하려고했습니다. httpBuilder에서 게시 또는 요청 방법의 차이를 완전히 이해하지 못했습니다.:사람이 내가 잘못
def http = new HTTPBuilder('http://some_IP:some_Port/') http.auth.basic('userName','password') http.post(path:'/path/ToServlet') http.post(POST,XML) { delegate.contentType="text/xml" delegate.headers['Content-Type']="text/xml" //delegate.post(getClass().getResource("/query.xml")) // body = getClass().getResource("/query.xml") body = { mkp.xmlDeclaration() Request{ Header{ Command('Retrieve') EntityIdentifiers { Identifier(Value:'PhoneNumber', Type:'TelephoneNumber') } EntityName('Subscriber') } } } }
지금 경우에 내가 여기 내 요청에 잘못된 XML을 번역
매우 감사 할 것입니다 무슨 짓을했는지 날 지점 도움이 될 수 있다면 그것의 XML 버전입니다<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Provisioning xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Request> <Header> <Command>Retrieve</Command> <EntityIdentifiers> <Identifier Value="phoneNumber" Type="TelephoneNumber" /> </EntityIdentifiers> <EntityName>Subscriber</EntityName> </Header> </Request> </Provisioning>
당신이 그것을 지금은 실제로 잘 볼 수있는 조금 더 나은 것 같다 을 @MichaelRutherford 감사 SSL 및 https로이 작업을 수행하려면 추가 단계를 수행해야 할 수 있습니다 형식화 된 XML 요청 그러나 HTTPBuilder가 호환되는 인수 유형에 대해 불평합니다. 명령 행에서 groovy 스크립트를 실행할 때 다음과 같은 오류가 발생합니다. java.io.StringWriter를 java.util.Map – user3849802
으로 캐스팅 할 수없고 Eclipse에서이 오류가 발생합니다. 어떤 종류의 이클립스 버그가있는 groovyx.net이라고합니다 : 메소드의 서명이 없습니다 : groovyx.net.http.HTTPBuilder.post() (java.util.LinkedHashMap, SMSC $ _run_closure2) 값 : {[ "contentType": application/xml, "query": @Michael Rutherfurd –
user3849802
groovy.xml.MarkupBuilder는 java.util.Map으로 캐스트 할 수 없습니다. 캐스팅 오류가 발생합니다. Map 또는 LinkedHashMap from xml.MarkupBuilder 올바른 유형으로 캐스트하는 방법 !! – user3849802