To view available web services in a WebSphere cell, from the admin console, select Services, and then Service Providers.
If you deployed an EAR containing a web service and you cannot see that the web service is available in WAS, the best option would be to first look at the WAS logs (regular logs + FFDC logs) to see if the WAS might have a problem with the processing of your class of service (for any reason).
If this does not help, you can configure WAS to extract trace data for JAX-WS operations.
I ran into a similar problem before WAS did not process my web service class and wrote nothing about it in its logs. Only after I installed the trace did I understand what the problem is, which may be similar to the problem you are facing: this is due to the WAS attempt to deploy the JAX-WS service when the following is true:
- The EAR contains the source code for the JAX-WS service; and
- An EAR does not contain all the classes needed to compile the web service class (or any of the classes used directly by the web service class).
Explanation : When deploying an EAR in WebSphere and determining the deployment of Web services ( -deployws ), when the EAR contains the source code for your application, WebSphere plays smart and goes ahead and tries to recompile your code. What for? living hell beats out of me, but that's what it is. If WebSphere cannot compile your JAX-WS Web Service class — or any class used by your web service class — it simply refuses, writes nothing to the logs, and your service does not deploy at all.
The only place WebSphere will log this will be in the trace file if JAX-WS tracing has been activated.
(I was considering opening a PMR with IBM for this, but I already had about 10 PMR open at that time ...)
source share