[jboss-user] [JBoss Web Services] - Performance Issues with ?wsdl

spyhunter99 do-not-reply at jboss.com
Wed Sep 5 14:30:29 EDT 2012

spyhunter99 [https://community.jboss.org/people/spyhunter99] created the discussion

"Performance Issues with ?wsdl"

To view the discussion, visit: https://community.jboss.org/message/758131#758131

Jboss 5.1.0GA, JbossWS native 3.4.0
also present in Jboss 5.1.2 eap with JbossWS native 3.1.2sp13

I've been noticing that each time something requests the wsdl from my web service endpoint, there is a huge spike in CPU usage on the server. Upon further investigation,  I checked out the class definition for the service

@WebService(serviceName="service1", name="service1", targetNamespace="urn:service1")
public class Service1Impl 

and then compared the wsdl presented by Jbossws with the one I had started with (top down) and they were different so I'm assuming that in this case, JbossWS generates a wsdl on the fly using reflection. The problem is that this is on every request. This probably should be cached somehow.

Continuing the investigation, I tried adding the wsdlLocation parameter to the class and deployed.

@WebService(serviceName="service1", name="service1", targetNamespace="urn:service1", wsdlLocation="WEB-INF/wsdl/my.wsdl")
public class Service1Impl 

The ?wsdl url now returns the same wsdl that I had created from the top down approach, which is good, however I'm still getting a significant delay when loading the ?wsdl endpoint and high CPU usage when pressing refresh a bunch of times. I'm not sure what's happening, but there should be no to little delay for this after the first time the wsdl is presented. It seems clear that there is no caching mechanism.

Question 1: how can I reduce the CPU usage and delay for returning the service?wsdl endpoint?
Question 2: is there a way to disable the auto generation of ?wsdl url and replace it with something else?
Question 3: is there any kind of cache mechanism that exists to resolve this?
Question 4: does the cxf stack provide any way to resolve this?

A few notes: all supporting files (i.e. imports) MUST be in WEB-INF/wsdl), if placed anywhere else, deployment tends to fail. My web service is actually a seperate jar bundled within a WAR file and thus the wsdl/xsd files must bein the WAR's WEB-INF/wsdl folder.

Reply to this message by going to Community

Start a new discussion in JBoss Web Services at Community

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20120905/09d4114a/attachment-0001.html 

More information about the jboss-user mailing list