2013-06-05 163 views
5

我在IntelliJ IDEA 12.1.3 Ultimate中有一个简单的RESTful服务。如何从IntelliJ IDEA中的RESTful Java代码生成WADL?

我测试过了。有用。现在我想为这个服务创建一个Java客户端,并且需要一个WADL。

根据http://wiki.jetbrains.net/intellij/RESTful_WebService的说明,我右键单击我的类并转至“Web服务 - > REST风格的Web服务”,仅查找菜单项“从Java代码生成WADL”已禁用。

我做错了什么?

下面的代码:

package com.mybiz; 

import javax.ws.rs.GET; 
import javax.ws.rs.Path; 
import javax.ws.rs.Produces; 

@Path("/greeting") 
public class Greeter { 
    @GET 
    @Produces("text/plain") 
    public String hello() { 
     return "Hi!"; 
    } 
} 

更新

看来,使用TomEE作为应用服务器禁用此功能。我在猜测应用程序服务器是WADL生成的地方,我没有使用IntelliJ可以理解的应用程序服务器。

我对不对?如果我切换应用程序服务器,它会工作吗我应该使用哪个应用程序服务器

+0

我只是做了它的一个我的Restful服务,但它是一个带有实现'class'的接口(IntelliJ适当地通过Spring连接),并返回'Response'而不是任意类型。看起来,它并不会打开服务器,而是使用我的生产文件夹启动全新的服务器,然后执行本地“远程”扫描。 – pickypg

+0

谢谢pickypg。你在使用什么应用程序服务器? – Jason

+0

我正在使用Glassfish,但具有讽刺意味的是,我准备切换到TomEE。 – pickypg

回答

1

您可以尝试手动生成您的bean。这里是如何做到这一点在这里一个很好的例子:

http://cxf.apache.org/docs/jaxrs-services-description.html

阅读部分wadl2java命令行工具

如果你的客户端项目是一个maven项目,你也可以添加你可以在同一页面找到的maven插件。

希望这有助于