An OpenAPI Generator Plus template for a Java API client using CXF
See java-jaxrs-client-generator for documentation.
The Java CXF client API includes interfaces and default implementations to invoke the API. These are created
in the impl package.
See java-jaxrs-client-generator for the request body that an operation takes, and for what it returns and throws.
The client conformance suite records these gaps. JAX-RS has no model of the OpenAPI serialization styles, so the generator gives each style its own type or converter. It does not cover these styles yet.
The generator gives an explode: false query array its own type, and a ParamConverter joins the
elements with a ",". A pipeDelimited array and a spaceDelimited array get a plain
java.util.List. JAX-RS writes one parameter for each element of a List, so those two styles do
not reach the wire in the declared form.
The generator declares an object query parameter as the model type. JAX-RS has no converter for the
model, so it writes the toString() of the model. This affects explode: true, explode: false
and deepObject alike.
An array header parameter gets a plain java.util.List, so JAX-RS writes the toString() of the
list. The specification asks for the elements joined with a ",".
See java-jaxrs-client-generator for config file documentation.
maven.versions takes cxf, along with the versions that every Java generator in this family takes. The
default is 3.6.9, or 4.1.4 when useJakarta is set, because CXF 3 uses the javax packages and CXF 4
uses the jakarta packages.