簡體   English   中英

如何為Jira WADL生成Java客戶端?

[英]How to generate Java client for Jira WADL?

所有

我試圖從Jira wadl描述符生成Java客戶端,但是它不起作用: java.lang.IllegalStateException:預期有單個WADL資源元素

使用的WADL文件: https : //docs.atlassian.com/jira/REST/7.0.4/jira-rest-plugin.wadl

使用的版本:

  <build>
        <plugins>
            <plugin>
                <groupId>org.apache.cxf</groupId>
                <artifactId>cxf-wadl2java-plugin</artifactId>
                <version>3.1.9</version>
                <executions>
                    <execution>
                        <id>generate-sources</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <sourceRoot>${basedir}/target/generated/src/main/java</sourceRoot>
                            <wadlOptions>
                                <wadlOption>
                                    <wadl>${basedir}/src/main/resources/jira-rest-plugin.wadl</wadl>
                                    <impl>true</impl>

                                    <packagename>com.mycompany.jira</packagename>
                                    <schemaPackagenames>
                                       <schemaPackagename>http://mycompany=com.mycompany.jira.schema</schemaPackagename>
                                    </schemaPackagenames>

                                </wadlOption>
                            </wadlOptions>
                        </configuration>
                        <goals>
                            <goal>wadl2java</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

我希望他們在7.x中修復了WADL ...

任何使它起作用的人嗎?

它看起來不像有效的WADL文件,它以輸入,輸入格式解釋了各個服務。 為了使wadl2java插件正常工作,您需要具有如下所示語法的WADL文件。

<application xmlns="http://research.sun.com/wadl/2006/10">
    <doc xmlns:jersey="http://jersey.dev.java.net/" 
            jersey:generatedBy="Jersey: 1.0-ea-SNAPSHOT 10/02/2008 12:17 PM"/>
    <resources base="http://localhost:9998/storage/">
        <resource path="/containers">
            <method name="GET" id="getContainers">
                <response>
                    <representation mediaType="application/xml"/>
                </response>
            </method>
            <!-- Next methods ->
        </resource>
     </resources>
  </application>

我想唯一的辦法是,如果有支持,請聯系atlassian以提供有效的WADL文件,否則您可能需要使用自上而下的方法並實現您共享的鏈接中所示的語法

這是一些其他信息,1)轉到您的特定服務器版本api docs url。 例如: -https : //docs.atlassian.com/software/jira/docs/api/REST/7.12.3/

2)在末尾附加“ jira-rest-plugin.wadl”,然后按Enter。這將下載您想要的特定版本的wadl

3)在Apimatic.io中免費注冊並登錄

4)使用轉換器上載wadl並指定輸出格式(Swagger openapi v2.0或3.0,或郵遞員等)

5)這將生成並下載swagger.json

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM