java.io.IOException: Server returned HTTP response code: 503 for URL: http://mybatis.org/dtd/mybatis-3-mapper.dtd
mybatis xml 파일을 읽어들이는데 언젠가부터 위와 같은 오류가 발생한다.
File file = new File("파일경로");
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(file);
위코드를
아래와 같이 바꿨다.
File file = new File("파일경로");
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
// dtd 무시하기
builder.setEntityResolver(new EntityResolver() {
@Override
public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException {
if (systemId.contains("mybatis-3-mapper.dtd")) {
return new InputSource(new StringReader(""));
} else {
return null;
}
}
});
Document doc = builder.parse(file);
참고 URL : http://stackoverflow.com/questions/155101/make-documentbuilder-parse-ignore-dtd-references