HTTPS에서 웹 서비스를 호출하고 Parse가 Java에서 XML 데이터에 응답했습니다.

StackOverflow https://stackoverflow.com/questions/2432915

문제

HTTPS URL과 연결하고 요청 스키마를 보내면 웹 서비스에서 XML 응답을 얻을 수 있습니다.

HTTPS URL 연결의 경우 다음을 사용 중입니다.

URL myurl = new URL(httpsURL);
                HttpsURLConnection con = (HttpsURLConnection)myurl.openConnection();
                con.setDoOutput(true);
                con.setDoInput(true);
                con.setUseCaches(false);
    con.setRequestProperty("Content-type","text/xml");

따라서 위 코드에서 서버에서 XML에 응답하고 있습니다. 이제 내 질문은 XML 데이터를 간단한 Java 객체에 응답하기위한 가장 좋은 구문 분석기입니다.

나는 그것에 대해 많은 솔루션을 얻었고 다양한 솔루션을 얻었지만 적절한 것을 선택할 때 혼란 스럽습니다.

샘플 예제를 제안한 사람이 있으면 ..

미리 감사드립니다 ...

편집하다 : 위의 HTTPS 응답은 비누가 아닙니다

도움이 되었습니까?

다른 팁

이것이 SOAP 서비스 인 경우 Spring-WS 또는 JAX-WS와 같은 SOAP 클라이언트 API를 사용해야합니다.

우리는이를 위해 메트로 라이브러리를 사용합니다.이를 위해 Java 1.5가 필요하며 Java 6에 포함되어 있습니다.

그런 다음 결과를 위해 DOM 트리를 얻은 다음 쉽게 후 처리 될 수 있습니다.

우리는 Metro를 사용하여 WSDL을 Java 소스로 변환하기 위해 Intellij 아이디어를 사용했습니다.

나는 Castor를 보는 것이 좋습니다.http://www.castor.org/xml-mapping.html) - XML을 Pojos에 매핑하는 매우 간단한 방법입니다. XML 스키마 (경우 WSDL 파일)를 기반으로 Java 클래스를 생성합니다.

구문 분석을 마치면 응답은 다음과 같이 간단합니다.

StringReader sr = new StringReader(inMessageString);
YourSoapResponse response = (YourSoapResponse)Unmarshaller.unmarshal(YourSoapResponse.class, sr);

캐스터는 비교적 빠르지 만 (예열되면) XML 응답이 "거대한"경우 재고하고 Stax를 사용해야 할 수도 있습니다 (http://stax.codehaus.org/home) 예를 들어.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top