Hello,

I have a number of SOAP services that that use wrapped SOAPBinding. I've 
recently ported this application to Spring Boot (creating an "uber jar" with 
embedded Jetty) and I've noticed a substantial slowdown in the initialization 
of the SOAP endpoints (adding minutes to what used to take less than a minute). 
The REST endpoints don't appear to experience any noticeable slowdown.

Running without the Spring Boot uber jar, instead just mvn spring-boot:run, 
greatly improves the initialization time. Additionally, switching to parameter 
type BARE while running with Spring Boot also improves initialization time. But 
of course that results in lots of these warnings:

Method interface <the interface method> is configured as BARE but there are 
more than one parameters with wrong @Webparam annotated or without @WebParam 
annotated.

My suspicion is that it's related to the uber jar and class loading as well as 
the reflection used to wrap the SOAP methods and that a much larger class path 
has to be traversed. In particular, JaxWsServiceConfiguration seems to spend 
time in getResponseWrapper and getRequestWrapper looking for classes that don't 
exist as far as I can tell (thus wasting time traversing the class path and 
throwing a lot of FileNotFound exceptions). 

I'm curious if anyone else has experienced similar issues and might be able to 
provide guidance as to what might be causing the slowdown and how best to 
resolve the issue. I've tried CXF 2.7.15 and 3.0.6 and Spring Boot 1.2.5 and 
milestone 1.3.0M4, none of which seemed to help.

Thanks,
Paul

Reply via email to