NekoHTML을 사용하여 일부 HTML을 구문 분석하려고합니다.Xerces는 SUN JRE v1.5 및 IBM J9 v1.5에서 다르게 동작합니다.
문제는 SUN JDK 1.5.0_01
에서 아래 코드가 실행될 때 문제가 발생한다는 것입니다.이 코드는 sun 일식과 함께 사용할 때 발생합니다. 그러나 동일한 일이 IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223ifx-20070323 (JIT enabled)
에서 실행될 때 작동하지 않습니다 (이것은 개발을 위해 IBM RAD를 사용할 때입니다).
NodeList tags = doc.getElementsByTagName("td");
for (int i = 0; i < tags.getLength(); i++)
{
Element elem = (Element) tags.item(i);
// do something with elem
}
잘 작동하면 더 이상 처리 할 수있는 "td"요소 목록을 얻게됩니다. J9의 경우에는 for
루프를 입력하지 않습니다.
최신 버전의 NekoHTML을 사용하고 있습니다 (번들로 제공되는 Xerces jars와 함께).
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pwi32devifx-20070323 (ifix 117674: SR4 + 116644 + 114941 + 116110 + 114881))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223ifx-20070323 (JIT enabled)
J9VM - 20070322_12058_lHdSMR
JIT - 20070109_1805ifx3_r8
GC - WASIFIX_2007)
JCL - 20070131
모든 아이디어, 제안 또는 해결 방법은 감사 : 위의 코드에서 doc
유형 org.w3.dom.Document
(사용 런타임 클래스는 org.apache.html.dom.HTMLDocumentImpl
입니다) 다음과 같이
IBM의 J9 정보
은이다. 감사.
* for 루프에 입력되지 않음 * - 즉, 'tags'는 빈 NodeList이거나 예외가 발생합니까? –
@Andreas : 예'tags'는 빈 NodeList입니다. 예외가 발생하면'try-catch' 블록 (스 니펫의 일부로 게시되지 않음)에 포착되거나 콘솔에 표시됩니다. – Favonius