Có công cụ nào có tệp Java mô tả dịch vụ REST làm tham số và tạo tệp wadl không.Công cụ thế hệ WADL
Trả lời
tôi đã cùng một vấn đề: đã sử dụng RESTeasy và muốn tìm cách để tạo ra WADL tự động.
Đã thực hiện một số nghiên cứu và đưa ra giải pháp bên dưới.
1. Tiện ích này để pom.xml
của bạn:
<build>
<plugins>
<plugin>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>maven-wadl-plugin</artifactId>
<version>1.17</version>
<executions>
<execution>
<id>generate</id>
<goals>
<goal>generate</goal>
</goals>
<phase>${javadoc-phase}</phase>
</execution>
</executions>
<configuration>
<wadlFile>${project.build.outputDirectory}/application.wadl
</wadlFile>
<formatWadlFile>true</formatWadlFile>
<baseUri>http://example.com:8080/rest</baseUri>
<packagesResourceConfig>
<param>com.example.rs.resource</param>
</packagesResourceConfig>
<wadlGenerators>
<wadlGeneratorDescription>
<className>com.sun.jersey.server.wadl.generators.WadlGeneratorApplicationDoc
</className>
<properties>
<property>
<name>applicationDocsFile</name>
<value>${basedir}/src/main/doc/application-doc.xml</value>
</property>
</properties>
</wadlGeneratorDescription>
<wadlGeneratorDescription>
<className>com.sun.jersey.server.wadl.generators.WadlGeneratorGrammarsSupport
</className>
<properties>
<property>
<name>grammarsFile</name>
<value>${basedir}/src/main/doc/application-grammars.xml</value>
</property>
</properties>
</wadlGeneratorDescription>
</wadlGenerators>
</configuration>
</plugin>
</plugins>
</build>
Chú ý đến các yếu tố buildUri
và packagesResourceConfig
. Bạn phải thay đổi chúng để phản ánh cấu hình của dự án của bạn. Bạn cũng có thể muốn thay đổi phiên bản của plugin (tôi đã sử dụng 1.17).
2. Tạo thư mục/doc và thêm một số tệp.
Tạo thư mục src/main/doc/
và tạo hai tệp bên dưới.
File: ứng dụng doc.xml
Nội dung:
<?xml version="1.0" encoding="UTF-8"?>
<applicationDocs targetNamespace="http://wadl.dev.java.net/2009/02">
<doc xml:lang="en" title="A message in the WADL">This is added to the start of the generated application.wadl</doc>
</applicationDocs>
File: ứng dụng grammars.xml
Nội dung:
<?xml version="1.0" encoding="UTF-8" ?>
<grammars xmlns="http://wadl.dev.java.net/2009/02" />
3. Chạy lệnh maven.
Đến thư mục dự án và chạy lệnh sau:
$ mvn compile com.sun.jersey.contribs:maven-wadl-plugin:generate
Các tập tin \target\classes\application.wadl
(các WADL chính nó) và \target\classes\xsd0.xsd
(schema các nguồn lực - nó được sử dụng bởi các application.wadl) nên được tạo ra .
Chỉnh sửa và sử dụng chúng như bạn muốn.
PS .: Hãy nhớ rằng đây là cách sử dụng rất đơn giản của plugin maven-wadl. Nó có thể làm nhiều hơn nữa. Để biết rõ hơn, vui lòng tham khảo tệp zip được đề cập trong câu trả lời khác (bởi Pavel Bucek).
Có, vui lòng xem mẫu gerenate-wadl [1] từ mẫu Jersey (tìm plugin maven-wadl).
- 1. bất kỳ công cụ tốt nào cho thế hệ makefile?
- 2. Xác nhận tệp WADL
- 3. Trình soạn thảo WADL trực quan
- 4. Rails quản trị vs kích hoạt Admin: Rails công cụ thế hệ quản trị
- 5. Khách hàng yên tĩnh từ WADL
- 6. công cụ xem asp.net MVC thay thế
- 7. Tạo và liên kết XSD với WADL
- 8. Công cụ mô phỏng Simulink hoạt động như thế nào?
- 9. Công cụ "Normalizer" CSS?
- 10. Công cụ random.Random.seed của python hoạt động như thế nào?
- 11. Đề xuất công cụ mẫu
- 12. thế hệ của tập tin thiết kế không thành công
- 13. build.xml version.tag cho các công cụ hệ thống 14, cú pháp?
- 14. WADL đã tạo cho Danh sách tài nguyên
- 15. Tải các menu và thanh công cụ WinForms để sử dụng chủ đề hệ thống?
- 16. Android: Công cụ hệ thống: Hiển thị cảnh báo cấp hệ thống: Cách sử dụng quyền này?
- 17. Công cụ quản lý Subversion
- 18. Công cụ tạo WSDL
- 19. Công cụ cho Informix
- 20. Redgate Công cụ SQL
- 21. Công cụ tốt nhất cho việc lập sơ đồ hệ thống phần mềm
- 22. Công cụ trực quan hóa lịch sử cho các hệ thống kiểm soát phiên bản?
- 23. Có một công cụ tốt để ghi lại/kiểm tra hệ thống không?
- 24. Công cụ tạo hệ thống phân cấp cuộc gọi của thư viện
- 25. Công cụ đánh giá mã công khai?
- 26. Công cụ MatchEvaluator trong Regex.Replace hoạt động như thế nào?
- 27. công cụ rrd thay thế cho khối lượng cao
- 28. Thay thế cho qTip (Plugin Công cụ jQuery)
- 29. Công cụ QGraphicsItem :: prepareGeometryChange() hoạt động như thế nào?
- 30. Các giải pháp thay thế cho công cụ bytecode Java
Tài liệu thực sự thiếu. 'PackagesResourceConfig' có phải là vị trí của các lớp với các điểm cuối thực tế không? – jiggy
@jiggy 'packagesResourceConfig' là gói java nơi có các lớp tài nguyên (dịch vụ) của bạn. – acdcjunior
XSD được tạo ra như thế nào? Không có sản phẩm nào được sản xuất. – Grayson