2014-12-03 60 views
1

我想在xsd提供的地方動態地創建一個xml。在程序本身中,我能夠用我給出的xsd的名稱生成jaxb對象。我想立即編譯這個類,並且必須解開xml(這裏的jaxb對象是未知的)。有人能幫我做這件事嗎?有沒有更好的選擇來做到這一點。這裏生成的xml應該有一些靜態填充的變量,而一些應該是動態填充的。用jaxb即時生成xml

+0

我已經嘗試使用xml文件生成動態實體,我可以修改它並生成xml文件。 https://docs.oracle.com/middleware/1212/toplink/TLJAX/dynamic_jaxb.htm – Raji 2014-12-05 09:54:42

回答

1

這是可能的。您可以在運行時進行編譯和解組,但是如何解開編組對象,然後?我的意思是,因爲類是在運行時生成的,所以你將無法真正訪問數據,對嗎?

好的,但不過。這裏的some code我寫幾年前的動態模式生成和編譯。這是some testing code。它的工作,但我不知道它是否仍然如此。

我認爲在運行時編譯類是錯誤的方法。更好地檢查dynamic approaches from MOXy。我想你可能對dynamic bootstraping from an XML Schema感興趣。

+0

感謝您的回答。我已經嘗試過使用moxy的動態方法。雖然這些類是動態生成的,但我們可以修改它並生成所需的xml。類名稱將是根元素的名稱,同樣也可以作爲文件名(xml和xsd)給出。 – Raji 2014-12-05 10:03:50

+0

那麼,我的答案是否解決了您的問題?隨後隨時接受它。 – lexicore 2014-12-05 10:14:01

+0

我已經嘗試過昨天本身,然後看到了這一點。 – Raji 2014-12-05 10:16:14