1) using Jax-ws's Dispatch/provider to
In Jax-ws, we can skip the processing of the soap stack and call the service Endpoint directly so that we can transfer pox (RAW XML) or JSON to service Endpoint processing, And you can get HTTP method via Messagecontext to make judgments and invoke different logic. It is necessary to realize that the Provider<source> interface is replaced by replacing the endpoint @webservice with @webserviceprovider. Then change the Bindingtype to (value = httpbinding.http_binding), indicating that the direct processing is HTTP, not soap.
Dispatch and provider, respectively, correspond to the client and the server, and they are, of course, free from use.
Provider out of Dispatch
Get and delete do not need to pass HTTP body, which natively supports arbitrary client
Post and put content via HTTP header, support for any client
Via HTTP body to post and put content, you need to simulate the HTTP body format Dispatch
Dispatch out of Provider
Generate the SOAP package yourself, the server can be the soap-based Web service
2) RESTful Httpservlets
As a matter of fact, rest itself is the HTTP architecture, we can manipulate HTTP request and response directly through the HTTP servlet, and the HTTP servlet itself provides doget doPost doPut dodelete Doheader, Dooptions method, by overriding these methods, we can implement restful Web services based on the HTTP servlet
3) Jax-rs
Jax-rs (JSR 311,java API for xml-restful Web Services) is based on the annotation implementation, we annotation the way to a Java class labeled as RESTful Web Service, and labeled its methods as HTTP crud. Related annotation have @path, @Produces, @GET, @POST, @DELETE, @PUT, @PathParam, etc.
There are already a lot of out-of-the-box implementations, such as Jersey, Apache CXF, JBoss resteasy, Apache Wink. TRIAXRS, etc.
4. Some other framework
There are other third-party frameworks that allow us to publish restful Web services and write web-client, such as Restlet
5) Container Support
Some container also provide utility tools to publish Java class as a restful Web services. But the oc4j1013 is too fake,