Quarkus CXF 3.8.4 (LTS) release notes

Important dependency upgrades:

New and noteworthy in Quarkus CXF

Sevice methods with the same name in the same Java package

If there are two SEIs in one Java package, both having a @WebMethod with the same name but different signature, then the default name for the ASM-generated request, response and possibly other classes is the same for both methods of both classes.

Before Quarkus CXF 3.10.0 and 3.8.4, no exception was thrown when this happened during the class generation. At runtime, only one set of those classes was present and calls to one of the clients failed inevitably.

Since Quarkus CXF 3.10.0 and 3.8.4, the problem is detected at build time and the build fails.

This was reported as issue #1326. We filed CXF-9003 to see whether a proper solution is possible in CXF.

Interceptors set through @InInterceptors and similar annotations are now looked up in the CDI container

Before Quarkus CXF 3.11.0 and 3.8.4, interceptors specified through @InInterceptors, @InFaultInterceptors, @OutInterceptors and @OutFaultInterceptors annotations from org.apache.cxf.interceptor package were only instantiated using reflection. Due to this, injecting beans and configuration values into them did not work.

Since Quarkus CXF 3.11.0 and 3.8.4, those interceptors are looked up in the CDI container first and reflexive instantiation is used only as a fallback. Injecting other beans and configuration values into interceptor beans created by the CDI container will work flawlessly.

@WebService(wsdlLocation="my-service.wsdl") now honored

Before Quarkus CXF 3.11.0 and 3.8.4, when a web service implementation had an annotation like @WebService(wsdlLocation="my-service.wsdl"), then only an auto-generated WSDL without policies and other important parts was served on http://localhost:8080/services/foo?wsdl instead the local WSDL file.

Since Quarkus CXF 3.11.0 and 3.8.4, the wsdlLocation attribute of the @WebService annotation is honored properly.

This was originally reported as issue #557.

Other minor changes

  • Improved FIPS and OpenTelemetry related test coverage

  • Typos and minor rewordings in the documentation

  • Dependency management improvements