This post walks you through exposing a java web service implementation as both SOAP and REST service. This project uses Apache CXF as a framework to implement JAX-WS and JAX-RS based service on same implementation class.https://github.com/kartikshah/sample-soap-rest
Web Service Interface
Here is the simple web service interface that has the annotations to expose it as both JAX-WS and JAX-RS endpoint.
Contract - WSDL and WADL
One of the crucial benefit of web service is that contract is either written or generated which serves as integration document. For that purpose, in my opinion, it is essential that either a WSDL or WADL is generated for methods exposed as web service. This applies specifically when using implementation first approach.
You can also generate WADL in JSON form by appending
WadlGenerator configuration in spring application context is key to generating correctly linked representation.