У меня была та же проблема: я использовал RESTeasy и хотел найти способ автоматически сгенерировать WADL.
Провел некоторые исследования и пришел к решению ниже.
1. Добавьте это к вашему pom.xml
:
<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>
Обратите внимание на элементы buildUri
и packagesResourceConfig
. Вы должны изменить их, чтобы они отражали конфигурацию вашего проекта. Вы также можете изменить версию плагина (я использовал 1.17).
2. Создайте папку / doc и добавьте несколько файлов.
Создайте папку src/main/doc/
и создайте два файла ниже.
Файл: application-doc.xml
Содержание:
<?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>
Файл: application-grammars.xml
Содержание:
<?xml version="1.0" encoding="UTF-8" ?>
<grammars xmlns="http://wadl.dev.java.net/2009/02" />
3. Запустите команду maven.
Перейдите в папку проекта и выполните следующую команду:
$ mvn compile com.sun.jersey.contribs:maven-wadl-plugin:generate
Должны быть сгенерированы файлы \target\classes\application.wadl
(сам WADL) и \target\classes\xsd0.xsd
(схема ресурсов - используется application.wadl).
Редактируйте и используйте их по своему желанию.
PS .: Имейте в виду, что это очень простое использование maven-wadl-plugin. Это может сделать намного больше. Чтобы узнать это лучше, обратитесь к zip-файлу, указанному в другом ответе (Павел Бучек).