JAX-RPC or JAX-WS ?

With the latest technology preview of JDeveloper, you have to choose between two flavors. Kind of like Strawberry vs. Vanilla. Which one should I pick. After all it's a question of taste.
Personally, I pick JAX-RPC for the following reasons:
- It's more stable as it was already part of 10.1.3 release.
- There is a nice helper to set endpoint address (and other little things).
- It does not query for the WSDL every time you instantiate a new object, which is mainly adding HTTP requests I do not want to see in the HTTP Analyzer window.
- Most of the time, I can work around schema issues with the no-data-binding options. You just need to learn how to leverage this class: oracle.webservices.SOAPUtil and the 'toSOAPElement()' method.

If you are looking into new features, like addressing, ws-rm or any policy-based feature, you should look at JAX-WS. It's the future.

For those who are missing setEndpoint(), the equivalent in JAX-WS will look like this:
URL endpointUrl;
...
((BindingProvider)port).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,
endpointUrl.toExternalForm());

It's hard to teach an old dog new tricks...

Comments

Popular posts from this blog

Changing the version of JDK used by JDeveloper

Connection reset from a WCF Web Service

Test locally first, then deploy to the cloud.