javaxmlspringsoapapache-camel

Java 21 Uplift - Apache Camel XSD XML entity/resource not found


I'm trying to update a Spring based module to Java 21 from Java 8. In particular it relies on Apache Camel. I had earlier removed org.apache.camel:camel-cxf in lieu of other dependencies, since its packages were javax.* based instead of jakarta.* based.

However, I eventually ran into an issue where one of the XML configuration files that sets up our internal SOAP API calls actually relied on a resource file from org.apache.camel:camel-cxf. Namely, I'm getting the following runtime error:

DTD/XSD XML entity [http://camel.apache.org/schema/cxf/camel-cxf.xsd] not found, falling back to remote https resolution

Despite searching for several days now, I can't seem to find an equivalent and up-to-date dependency online that provides this resource. Hence I'm not sure which direction I should take now. I'm happy to move away from this XML based configuration in lieu of a Java DSL based one, if that allows me to move past this error.

What I'm looking at right now is

<!-- CXF End point for ourService -->
    <cxf:cxfEndpoint id="serviceEndpoint"
       <!-- properties and stuff-->
    </cxf:cxfEndpoint>

where cxfEndpoint cannot be found due to a non-existent resource, but is referred to in a route later on. I'm not familiar with the tag/class myself so I'm not sure what/how to emulate as an alternative.


Solution

  • It looks like <cxf:cxfEndpoint> and the .xsd file that provides it is no longer provided by the appropriate dependency, camel-cxf-soap. However, it does provide the equivalent Java class, so the best solution I am taking is to rewrite the XML configurations in Java DSL.