I have real difficulty finding commandline tool to convert WADL to java. No matter how much I try to google, follow blogs or java.net doc, there is no real download link. (links are broken or obsolete).
What particular vendor, community group is supplying this tool ? Does free download link exist ?
The generated code should be able to reconstruct POJOs from XML responses and survive inside Tomcat 7. Thank you
Answer: (this works only after June 2011):
- Take Apache-CXF-2.4.1.zip (not any of the earlier versions)
- Extract it to root folder
- Take Apache-CXF-2.4.1.src.zip
- Search for folder named distribution inside src
- Extract ditribution folder and merge it with no overwrites to root folder
- goto bin and spot the wadl2java.bat
- run wadl2java.bat from command prompt
- continue with no brainer details
For generating client side stubs from WADL, use a tool wadl2java. Download wadl tool from here:- http://search.maven.org/remotecontent?filepath=org/jvnet/ws/wadl/wadl-dist/1.1.5/wadl-dist-1.1.5-bin.zip.
For genearting client side java stubs(POJOs), use this command: \wadl2java -o .\src -p com.test.client WADL_FILE_LOCATION
If you are using maven project then you can use wadl2java maven plugin for this work.
Apache CXF recently added support for WADL-first development of REST services. For more background information on its
wadl2java
tool, this blog entry by one of the CXF committers should help.As of Apache CXF version 2.7.11 just download the binary zip / tar.gz, set
CXF_HOME
env-var to/path/to/apache-cxf-x.y.z
and wadl2java is available at$CXF_HOME/bin
Just to give an update with CXF version 3.2.1 it worked for me.
Steps are
wadl2java
to get the usagewadl2java -p com.x.y.z wadl-file.xml
to generate your classes in current directory.By the way I noticed that it created a class with a space in the name and also created classes with name starting with digits :)
I had some trouble using the CXF 2.5.4 wadl2java tool. It kept complaining of a missing "resources" element in my WADL file, even though it contained one.
wadl.java.net has a download of wadl2java that worked for me.