1
서버에서 오류가 발생하여 XML을 반환하지 않았지만 오류 메시지가 표시되는 이유는 무엇입니까? 유효한 XML인지 확인하는 방법이 있나요, 그래서이 메시지가 표시되지 않습니다.발생 원인 : org.w3c.dom.DOMException : 하나의 루트 요소 만 허용
나는이 방법으로 XML을 전달합니다
public Document getDomElement(String xml){
Document doc = null;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder db = dbf.newDocumentBuilder();
InputSource is = new InputSource();
is.setCharacterStream(new StringReader(xml));
doc = db.parse(is);
} catch (ParserConfigurationException e) {
Log.e("Error: ", e.getMessage());
return null;
} catch (SAXException e) {
Log.e("Error: ", e.getMessage());
return null;
} catch (IOException e) {
Log.e("Error: ", e.getMessage());
return null;
}
// return DOM
return doc;
}
감사
안녕하세요, 오류가 발생한 이유는 일반적으로 XML이 전달되고 정상적으로 작동하기 때문입니다. 하지만 이제 XML 형식이없는 몇 줄의 오류 메시지 만 표시됩니다. 응답을 변경할 수 없어이 메서드에 유효한 XML 문자열을 전달하는지 확인하거나이 오류를 잡을 수있는 방법이 있습니까? – Diego
마지막 문장을 말했을 때, 물론 나는 단지 DomException을 잡아야한다고 생각했습니다. – Diego
@Diego 맞습니다. 예외 상황을 파악하고 해당 시나리오에서 null 문서를 반환 할 수 있습니다. – alfasin