2011-08-17 6 views
1

XML 문서와 노드를 지정했습니다. 이 노드는 내 클래스로 래핑되며이 언급 된 클래스는 직렬화 된 다음 직렬화되어야합니다 (일부 워크 플로에서). 내 문제는 노드 구현 (내가 사용해야하는)을 직렬화 할 수 없었기 때문에 나타납니다. deserializing 후 직렬화 된 노드에 대한 참조가 있어야합니다 (구체적으로 - 부모 노드).XML 노드 위치 가져 오기 - XPath?

달성하고자하는 것은 내 노드의 경로를 일련의 모호하지 않은 객체에 저장하는 것입니다.이 객체는 직렬화 될 수 있습니다. 그런 다음이 객체 (직렬화 된 경로)는 Node 노드를 모호하지 않게 복원해야합니다.

이 동작은 XPath에 대해 생각하게 만듭니다. XPath 객체 (명령)는 일련 화 될 수 있으며 문서에서 Node를 가져 오는 데 사용할 수 있습니다. 하지만 XML 문서의 컨텍스트에서 주어진 Node에 XPath를 저장하는 방법을 모른다.

어떤 도움을

+0

이 주제는 특정 상위 항목의 위치에 대한 것입니다. 나는 글로벌 포지션 (언급 된 직책의 목록)을 달성하고자한다. C#으로 작성된 솔루션은 나에게 매우 수동적입니다.이 클래스에는 전용 클래스를 사용하고 싶습니다. 직접 작성하는 것은 좋지 않을 것입니다. –

+0

이게 당신이 쓴거야? http://stackoverflow.com/questions/4746299/generate-get-xpath-from-xml-node-java 나는 "글로벌 포지션"이 무슨 뜻인지 정말로 이해하지 못합니다. –

+0

전역 위치는 XML 루트에서 지정된 노드의 전체 경로를 의미합니다. –

답변

0

수 있었 외부화 인터페이스가 도움이 밖으로 여기에서 감상 할 수있다? writeObject() 및 readObject() 메서드를 Serializable 구현 클래스에 '추가'하십시오.

아이디어가 (확실히 당신의 책장에 있어야합니다) 자바 브루스 Eckels 생각에서 오는 있지만, 당신은뿐만 아니라 그물에 고급 직렬화에 대한 정보를 찾을 수 있습니다

건배 빔

관련 문제