저는 작은 회사에서 일하고 우리의 프로덕션 시스템은 Java에서 JAXB로 구현 된 손으로 롤아웃 된 RESTful API를 사용합니다. 이제 우리는 Ruby on Rails를 사용하는 고객을 확보하고 있으며 Ruby에서 API를 사용하는 방법을 고객에게 보여주기 위해 참조 구현을해야합니다. ActiveResource를 사용하라고 말할 수는 있지만, API가 요구하는 XML은 네임 스페이스를 사용합니다 (그리고 절대적으로 필요합니다). 안타깝게도 이미이 API를 통합 한 여러 고객이 이미 있으므로 이름 공간 사용을 제거하는 것은 문제가되지 않습니다. Ruby에서 네임 스페이스를 사용하여 XML을 생성하는 가장 좋은 방법은 무엇입니까?XML 네임 스페이스에 대한 Ruby 지원
답변
"최고"분명히 귀하의 필요에 따라 다릅니다. link to rdoc -
루비의 모든 XML을 생성하는 빠른 방법은 libxml-ruby을 사용하는 것입니다. 서버에 어떤 종류의 부하라도 발생하면이 방법이 유용 할 것입니다.
가장 쉬운 루비에서 XML을 생성하는 방법은 REXML을 표준 라이브러리의 일부로 사용하기 때문에 "그냥 작동합니다". XML 생성이 거의 사용되지 않는다면 rexml을 사용하는 것이 더 쉽습니다.
모두 지원 XML 네임 스페이스 - 설정하고 난 당신 (의 RESTful API 네임 스페이스 승/JAXB와 함께 수행)와 거의 동일한 상황에서 자신을 찾을 수 네임 스페이스를
을 얻는 방법을 찾기 위해 rdocs을 확인합니다.
Ruby에서 XML 작업을하는 가장 유망한 프로젝트는 HappyMapper라고 생각합니다. 이것은 일종의 XML 바인딩 라이브러리입니다 (초기 JAXB 유형 구현의 라인을 따라). 최근에 많은 관심을 끌었으며, 우리 중 일부는 좋은 네임 스페이스 지원을 제공하기 위해 노력하고 있습니다.
이 프로젝트는 여기에있는 : http://github.com/jnunemaker/happymapper/tree/master
이 프로젝트는 현재 루비 개체에서 XML의 생성을 지원하지 않으며, 원래 저자가 제공 할 욕망을 표현하지 않았다 : 여기 소스와 http://happymapper.rubyforge.org/
그 지원,하지만 내 포크에 대한 몇 가지 기능을 저지르고있을거야 : http://github.com/jimmyz/happymapper/tree/master
희망이 도움이됩니다.
- 지미 짐머만
- 1. 네임 스페이스에 대한 XML 문서
- 2. 네임 스페이스에 대한 걱정없이 XML 쿼리
- 3. 파이썬 네임 스페이스에 대한 설명
- 4. 충돌하는 네임 스페이스에 대한 global :: 사용
- 5. Xmlns 재귀 네임 스페이스에 대한 정의
- 6. Qt의 UI 네임 스페이스에 대한 근거는 무엇입니까?
- 7. 자바 스크립트 네임 스페이스에 대한 질문
- 8. 외부 라이브러리 및 네임 스페이스에 대한 질문
- 9. DataContract에 대한 다른 네임 스페이스에 DataMember 추가
- 10. 빈에 대한 스프링 p 네임 스페이스에 대한 합의가 무엇입니까?
- 11. XML 직렬화를 사용하여 다른 XML 네임 스페이스에 속성 배치
- 12. 네임 스페이스에 변수가 있습니까?
- 13. 네임 스페이스에 파일 포함하기
- 14. 속성에 대한 XML 네임 스페이스
- 15. 네임 스페이스에 함수 템플릿 오버로딩
- 16. VCCodeModel이 VCCodeModel 네임 스페이스에 없습니까?
- 17. 패키지 네임 스페이스에 객체 추가
- 18. DelegateCommand는 어느 네임 스페이스에 있습니까?
- 19. # linq xml 동일한 네임 스페이스에 두 개의 접두사를 사용하는 방법
- 20. netbeans이 네임 스페이스에 대한 라이브러리를 찾을 수 없음
- 21. "접두사 'x'는 네임 스페이스에 매핑되지 않습니다."
- 22. 네임 스페이스에 사용되는 모든 지시문은 네임 스페이스 안에 있어야합니까?
- 23. WpfApplication1.Properties 네임 스페이스에 대한 좋은 xmlns 별칭은 무엇입니까?
- 24. javascript로 오염 된 전역 네임 스페이스에 대한 더 나은 시각
- 25. nhibernate에서 네임 스페이스에 대한 데이터베이스 스키마를 설정하는 방법
- 26. 다른 네임 스페이스에 여러 속성 구현
- 27. 'Mvc'형식의 네임 스페이스가 'System.Web'네임 스페이스에 없습니다.
- 28. 참조 static const 변수가 네임 스페이스에 선언되었습니다.
- 29. jQuery 선택기가 네임 스페이스에 속성으로 저장되었습니다.
- 30. Ruby xAuth 지원
성능이 정말 여기에 문제가되지 않습니다, 그래서 나는 그것이 가장 쉽고 빠르게 모습으로 REXML로가는 상처와 꽤 잘 작동. 응답 해주셔서 감사합니다. –