0
몇 주 전에 나는 여기에 issue을 게시했습니다. 이제는 다른 경우에 비슷한 문제가 있습니다. 자바 업로드를 만들었는데 XML 파일이 잘 구성되었는지 확인하고 싶었습니다. 확인 후 삭제하고 싶습니다. 그러나 변환에 실패하면 파일을 삭제할 수 없습니다. 동일한 문제가있는 로컬 컴퓨터에서 실행하는 데 훨씬 쉬운 예제를 만들었습니다. 내 소스 코드는 아래를 참조하십시오. 손쉽게 복사하여 붙여 넣기를 할 수 있습니다.Saxon XML 유효성 검사 : 유효성 검사가 실패했을 때 XML 파일을 삭제할 수 없습니다.
몇 주 전에보고 한 버그와 같은 버그를 발견 했습니까? 코드에서 뭔가를 놓쳤습니까? 나는 Saxon 9.4HE를 사용했다.
public class TestClass
{
public static void main (String[] args) throws Exception
{
boolean isWellFormed = isXMLwellformed(new File("work/file.xml"));
if(isWellFormed) System.out.println("File is well formed");
else
{
System.out.println("File is not well formed");
}
FileUtils.deleteDirectory(new File("work"));
}
private static boolean isXMLwellformed(File file)
{
boolean isWellformed = true;
TransformerFactory factory = TransformerFactory.newInstance();
StreamSource source = new StreamSource(file);
try
{
Transformer trans = factory.newTransformer();
SAXResult sink = new SAXResult(new DefaultHandler());
trans.transform(source, sink);
}
catch (TransformerException err)
{
System.err.println("Validation failed: " + err.getMessage());
isWellformed = false;
}
return isWellformed;
}
}
Saxon 9.5에서 문제가 계속 발생하는지 확인해주세요. –