我正在尝试使用wadl2java命令行工具为我提供的wadl生成客户端存根,但是我得到一个JClass名称为空错误。任何人都可以帮我解决这个问题吗?我似乎无法在此周围发现信息。
fullstack跟踪是
线程“main”中的异常 java.lang.IllegalArgumentException异常: JClass名称为空 com.sun.codemodel.JDefinedClass。(JDefinedClass.java:194) 在 com.sun.codemodel.JDefinedClass。(JDefinedClass.java:154) 在 com.sun.codemodel.JDefinedClass._class(JDefinedClass.java:631) 在 com.sun.codemodel.JDefinedClass._class(JDefinedClass.java:606) 在 org.jvnet.ws.wadl2java.ResourceClassGenerator.generateClass(ResourceClassGenerator.java:132) 在 org.jvnet.ws.wadl2java.Wadl2Java.generateSubClass(Wadl2Java.java:406) 在 org.jvnet.ws.wadl2java.Wadl2Java.generateEndpointClass(Wadl2Java.java:384) 在 org.jvnet.ws.wadl2java.Wadl2Java.process(Wadl2Java.java:146) 在 org.jvnet.ws.wadl2java.Main.main(Main.java:120)
答案 0 :(得分:2)
在您的wadl文件中,如果您的路径没有值,那么您将获得此异常。这是众所周知的bug。要解决它,只需添加路径或空。
<resource path="/">
以上错误。
正确的是
<resource path="/MyClass">
答案 1 :(得分:0)
我们已经看到使用Jersey的空PATH的附加类型来生成wadl。手动删除多余的行可以解决问题。