openapi-generator/docs/generators/jaxrs-cxf-extended.md
Adrian Price 2985c0f0b8 JAX-RS/CXF 1158 Options to generate fully functional method bodies passing fully populated test data (#1879)
* add option to generate alias as model

* [JAXRS/CXF] Emit method bodies, test data (#1158)

New jaxrs-cxf-extended generator with options:
 - supportMultipleSpringServices Support generation of Spring services
   from multiple specifications
 - generateOperationBody (boolean) Enables generation of fully
   functional test/service method bodies that pass/return random
   but valid values & models.
 - loadTestDataFromFile (boolean) When true, generated method bodies
   load test data from a generated JSON file. When false, generated
   method bodies contain inline code to construct the test data.
 - testDataFile (string) The path of a JSON file to contain generated
   test data. The file is initially generated but editable; edits are
   preserved by subsequent generations.
 - testDataControlFile (string) The path of a JSON file to control test
   data generation - specifically, to control the number of items
   required in array properties, structured by API class
   / operation name / parameter name. The file is initially generated
   but editable; edits are preserved by subsequent generations.
 - tests for the jaxrs-cxf-extended generator, including the new options
Bug fixes:
 - fix bug (DefaultGenerator): handle absolute paths in supporting file
   spec
 - fix bug (DefaultCodegen): process enums in allVars
 - fix bug (AbstractJavaCodegen): support multiple inheritance via
   allOf (inheritance code deleted, as a subsequent pull broke it)
 - fix bug (JavaCXFServerCodegen): use operationId instead of nickname
(gets out of step with duplicate operationIds)
 - fix bug (JavaCXFServerCodegen): set appropriate default
consumes/produces for operations with body parameters or non-void
returns (CXF providers don't handle */*)
 - fix indentation (DefaultCodegen)
 - add support for a system property openapitools.implementation.version
to specify the package implementation version when running non-JAR'd
classes in an IDE (otherwise {{{generatorVersion}}} evaluates to
'unset'.

* reformat code

* make sh executable

* fix template folder

* fix template folder, update samples

* run test data manually to avoid ci failure
2019-03-06 08:58:11 +08:00

5.3 KiB


id: generator-opts-server-jaxrs-cxf-extended title: Config Options for jaxrs-cxf-extended sidebar_label: jaxrs-cxf-extended

Option Description Values Default
sortParamsByRequiredFlag Sort method arguments to place required parameters before optional parameters. true
ensureUniqueParams Whether to ensure parameter names are unique in an operation (rename parameters that are not). true
allowUnicodeIdentifiers boolean, toggles whether unicode identifiers are allowed in names or not, default is false false
prependFormOrBodyParameters Add form or body parameters to the beginning of the parameter list. false
modelPackage package for generated models null
apiPackage package for generated api classes null
invokerPackage root package for generated code null
groupId groupId in generated pom.xml null
artifactId artifactId in generated pom.xml null
artifactVersion artifact version in generated pom.xml null
artifactUrl artifact URL in generated pom.xml null
artifactDescription artifact description in generated pom.xml null
scmConnection SCM connection in generated pom.xml null
scmDeveloperConnection SCM developer connection in generated pom.xml null
scmUrl SCM URL in generated pom.xml null
developerName developer name in generated pom.xml null
developerEmail developer email in generated pom.xml null
developerOrganization developer organization in generated pom.xml null
developerOrganizationUrl developer organization URL in generated pom.xml null
licenseName The name of the license null
licenseUrl The URL of the license null
sourceFolder source folder for generated code null
serializableModel boolean - toggle "implements Serializable" for generated models false
bigDecimalAsString Treat BigDecimal values as Strings to avoid precision loss. false
fullJavaUtil whether to use fully qualified name for classes under java.util. This option only works for Java API client false
hideGenerationTimestamp hides the timestamp when files were generated null
withXml whether to include support for application/xml content type and include XML annotations in the model (works with libraries that provide support for JSON and XML) false
dateLibrary Option. Date library to use
joda
Joda (for legacy app only)
legacy
Legacy java.util.Date (if you really have a good reason not to use threetenbp
java8-localdatetime
Java 8 using LocalDateTime (for legacy app only)
java8
Java 8 native JSR310 (preferred for jdk 1.8+) - note: this also sets "java8" to true
threetenbp
Backport of JSR310 (preferred for jdk < 1.8)
null
java8 Option. Use Java8 classes instead of third party equivalents
true
Use Java 8 classes such as Base64
false
Various third party libraries as needed
null
disableHtmlEscaping Disable HTML escaping of JSON strings when using gson (needed to avoid problems with byte[] fields) false
booleanGetterPrefix Set booleanGetterPrefix (default value 'get') null
parentGroupId parent groupId in generated pom N.B. parentGroupId, parentArtifactId and parentVersion must all be specified for any of them to take effect null
parentArtifactId parent artifactId in generated pom N.B. parentGroupId, parentArtifactId and parentVersion must all be specified for any of them to take effect null
parentVersion parent version in generated pom N.B. parentGroupId, parentArtifactId and parentVersion must all be specified for any of them to take effect null
snapshotVersion Uses a SNAPSHOT version. null
implFolder folder for generated implementation code null
title a title describing the application null
useBeanValidation Use BeanValidation API annotations true
serverPort The port on which the server should be started null
generateSpringApplication Generate Spring application false
useSpringAnnotationConfig Use Spring Annotation Config false
useSwaggerFeature Use Swagger Feature false
useSwaggerUI Use Swagger UI false
useWadlFeature Use WADL Feature false
useMultipartFeature Use Multipart Feature false
useGzipFeature Use Gzip Feature false
useGzipFeatureForTests Use Gzip Feature for tests false
useBeanValidationFeature Use BeanValidation Feature false
useLoggingFeature Use Logging Feature false
useLoggingFeatureForTests Use Logging Feature for tests false
generateSpringBootApplication Generate Spring Boot application false
generateJbossDeploymentDescriptor Generate Jboss Deployment Descriptor false
addConsumesProducesJson Add @Consumes/@Produces Json to API interface false
useAnnotatedBasePath Use @Path annotations for basePath false
generateNonSpringApplication Generate non-Spring application false
useGenericResponse Use generic response false
supportMultipleSpringServices Support generation of Spring services from multiple specifications false
generateOperationBody Generate fully functional operation bodies false
loadTestDataFromFile Load test data from a generated JSON file false
testDataFile JSON file to contain generated test data null
testDataControlFile JSON file to control test data generation null