我在一家小公司工作,我們的生產系統使用手動RESTful API,使用JAXB以Java實現。我們現在發現我們正在接觸使用Ruby on Rails的客戶,並且我必須提供一個參考實現來向客戶展示如何在Ruby中使用我們的API。我希望能夠告訴他們使用ActiveResource,但我們的API所需的XML使用(並且絕對需要)命名空間。不幸的是,我們已經有很多已經集成了這個API的其他客戶,所以刪除命名空間的使用是不可能的。在Ruby中用命名空間生成XML的最佳方式是什麼?Ruby對XML名稱空間的支持
7
A
回答
9
「最好」顯然取決於您的需求。
的最快方式產生紅寶石任何XML是使用libxml-ruby - link to rdoc。 如果你的服務器完全得到任何負載,這將是要走的路。
最簡單在ruby中生成任何XML的方法是使用REXML,因爲它是標準庫的一部分,因此它「正常工作」。如果您的XML代是幾乎沒有被使用過的,那麼使用rexml可能更容易。
兩者都支持XML命名空間 - 檢查rdocs以瞭解如何設置和獲取命名空間
1
,我發現自己在幾乎相同的情況和你(REST的API與JAXB做W /命名空間)。
我認爲在Ruby中使用XML最有前途的項目是HappyMapper。它是一種XML綁定庫(遵循早期的JAXB類型實現)。最近它獲得了很多的關注,並且我們中的一些人一直致力於提供良好的命名空間支持。
該項目所在的位置: http://happymapper.rubyforge.org/
與源位置: http://github.com/jnunemaker/happymapper/tree/master
該項目目前不支持XML的創作從Ruby對象,以及原作者已表示無意提供支持,但我會在我的叉中提交一些功能: http://github.com/jimmyz/happymapper/tree/master
希望這會有所幫助。
- 吉米·齊默爾曼
相關問題
- 1. XSLT2.0名稱空間支持
- 2. 支持不同名稱空間的XSD
- 3. Squeak是否支持名稱空間?
- 4. XML中的名稱空間
- 5. 使用XML名稱空間
- 6. XML :: LibXML和名稱空間
- 7. XML架構名稱空間
- 8. XML名稱空間衝突
- 9. 使用Linq Xml的空名稱空間
- 10. 名稱空間對象的名稱
- 11. 項目的默認XML名稱空間必須是MSBuild XML名稱空間
- 12. 不受支持的綁定名稱空間「」
- 13. MySQL中的ExtractData支持名稱空間嗎?
- 14. 如何實現支持名稱空間的FIFO隊列
- 15. TypeScript是否支持名稱空間類的類聲明?
- 16. Java + DOM:如何將沒有名稱空間的DOM樹轉換爲支持名稱空間的DOM樹?
- 17. 供應商特定名稱空間不受支持的綁定名稱空間例外
- 18. 具有名稱空間的Xml元素
- 19. xerces中的多個XML名稱空間
- 20. XML中名稱空間的區別
- 21. 查詢多名稱空間的XML
- 22. xslt中的XML名稱空間處理
- 23. 從XSLT使用媒體名稱空間 - 僅支持1.0功能?
- 24. 刪除XML名稱空間,而忽略根目錄下的名稱空間
- 25. 包含多個名稱空間的XSLT for XML包含多個名稱空間
- 26. 腳本命名空間支持ESB
- 27. Logic App Service Bus連接器是否支持配對名稱空間?
- 28. 對SVG的Ruby支持
- 29. 如何選擇新的XML語言的名稱空間名稱?
- 30. Resharper不支持名稱空間命名約定的Microsoft最佳做法嗎?
性能是不是真的在這裏的一個問題,所以我結束了REXML去,因爲它看起來像最快捷,最簡單的解決方案,它的工作相當不錯。非常感謝您的回覆。 – 2008-11-04 18:42:12