2011-05-13 76 views
2

是否有可能在不知道它是類型的情況下解組一個類(JAXBContext.newInstance(clazz)),或者測試什麼是正確的方法? 我確實從純文本中獲取解組消息 - 字符串JAXB反編組

接收類不實現任何接口,並且可以位於任何包中。

感謝

回答

3

不,不是真的。 JAXB上下文需要一些關於哪些類應該綁定到的信息。如有必要,將每個可能的JAXB註釋類的列表傳遞給上下文工廠方法。

但是這不應該是一個限制 - 你自己的代碼也需要知道什麼類可以期待。如果你的代碼不知道或關心綁定類的類型,那麼JAXB就不是這個工作的工具,你應該將它解編成某種通用的DOM。

+0

是的,你是對的,我最終可以通過Unmarshaller.unmarshal(InputStream)解組它,而不必指定類的類型? – fafaano 2011-05-13 10:21:28

+0

@fafaano:對。不過,您可能仍然需要將結果轉換爲某種東西,否則爲什麼要打擾JAXB? – skaffman 2011-05-13 10:22:25

+0

是的:)謝謝 – fafaano 2011-05-13 11:23:26

0

試圖找到你的類,它可以進來XML在一個包,然後它的列表傳遞給JAXBContext中。