2008-10-29 33 views
7

Tôi làm việc tại một công ty nhỏ và hệ thống sản xuất của chúng tôi sử dụng API RESTful được cuộn bằng tay, được triển khai bằng Java với JAXB. Bây giờ chúng tôi thấy rằng chúng tôi đang sử dụng các khách hàng sử dụng Ruby on Rails và tôi phải đưa ra một triển khai tham chiếu để cho khách hàng biết cách sử dụng API của chúng tôi trong Ruby. Tôi rất muốn có thể chỉ yêu cầu họ sử dụng ActiveResource, nhưng XML theo yêu cầu của API của chúng tôi sử dụng (và hoàn toàn yêu cầu) không gian tên. Thật không may, chúng tôi đã có một số khách hàng khác đã tích hợp API này, do đó việc xóa sử dụng không gian tên nằm ngoài câu hỏi. Cách tốt nhất để tạo XML với các không gian tên trong Ruby là gì?Hỗ trợ Ruby cho các không gian tên XML

Trả lời

9

"Tốt nhất" rõ ràng phụ thuộc vào nhu cầu của bạn.

nhanh nhất cách để tạo bất kỳ XML nào trong ruby ​​là sử dụng libxml-ruby - link to rdoc. Nếu máy chủ của bạn nhận được bất kỳ loại tải nào, đây sẽ là cách để thực hiện.

cách dễ nhất cách để tạo bất kỳ XML nào trong ruby ​​là sử dụng REXML vì nó là một phần của thư viện chuẩn và do đó nó "chỉ hoạt động". Nếu thế hệ XML của bạn là cái gì đó hầu như không bao giờ được sử dụng, nó có thể dễ dàng hơn để đi với rexml.

Cả hai hỗ trợ không gian tên XML - kiểm tra rdocs để tìm hiểu làm thế nào để thiết lập và nhận được không gian tên

+0

Hiệu suất là không thực sự là một vấn đề ở đây, vì vậy tôi quấn lên đi với REXML vì nó trông giống như các giải pháp nhanh nhất, đơn giản nhất và nó làm việc khá tốt. Cảm ơn bạn rất nhiều vì đã trả lời của bạn. –

1

tôi thấy mình trong gần một tình huống giống hệt như của bạn (RESTful API thực hiện với JAXB w/không gian tên).

Tôi nghĩ rằng dự án hứa hẹn nhất để làm việc với XML trong Ruby là HappyMapper. Nó là một loại thư viện ràng buộc XML (dọc theo các dòng của một triển khai kiểu JAXB sớm). Nó đã đạt được nhiều lực kéo gần đây, và một vài trong số chúng tôi đã làm việc để cung cấp hỗ trợ không gian tên tốt.

Dự án cư trú ở đây: http://happymapper.rubyforge.org/

với nguồn ở đây: http://github.com/jnunemaker/happymapper/tree/master

Dự án hiện không hỗ trợ việc tạo ra XML từ Ruby Objects, và tác giả ban đầu đã bày tỏ sự không mong muốn cung cấp sự hỗ trợ đó, nhưng tôi sẽ cam kết một số chức năng cho điều đó trong ngã ba của tôi: http://github.com/jimmyz/happymapper/tree/master

Hy vọng điều này sẽ hữu ích.

- Jimmy Zimmerman

Các vấn đề liên quan