JEAF Generator Error Codes
This page describes all the possible errors and warnings that might come up during code generation.
Code | Type | Description |
---|---|---|
9100 |
Error |
JEAF Generator expects a specific version of the so called JEAF Meta Model (JMM). The JMM version that is used by your UML model seems to be outdated. Please upgrade to latest version of JMM. |
9101 |
Warning |
When working with OpenAPI and REST there are some restrictions concerning the data types that can be used in Java. This warning tells you that in a specific REST operation a incompatible parameter or return type is used. This will lead to an invalid request / response from an OpenAPI perspective. |
9102 |
Warning |
Depending on how you export XMI files from your MagicDraw UML model, it might happen that the files contain information about file systems paths. This should not be an issue on the machine where you exported the files. However, it may lead to problems on other devices or your CI/CD infrastructure where file system paths might not be the same. |
9103 |
Warning |
When working with OpenAPI and REST there are some restrictions concerning the data types that can be used in Java. This warning tells you that in a defined «BeanParam» at least one property uses an incompatible type. This will lead to an invalid request / response from an OpenAPI perspective. |
9104 |
Error |
When defining the path of a REST resource then the path that is defined on the «RESTResource» (not «RESTOperation» ) must start with a '/' . |
9105 |
Error |
The resource path of an «RESTOperation» is the combination of the path of the «RESTResource» and the «RESTOperation» . However at least one of them has to be defined. |
9106 |
Error |
The path of a «RESTOperation» must not start with '/' . |
9107 |
Error |
Each «RESTOperation» must define at least one HTTP method. If this message occurs then you have to fix your UML model. |
9108 |
Error |
The «RESTOperation» uses a HTTP status code that is not compatible with JAX-RS standard. |
9109 |
Error |
The supported consumed media types can either be defined on the «RESTResource» or on the «RESTOperation» but at least on one of them the information has to be defined. |
9110 |
Error |
The produced media types can either be defined on the «RESTResource» or on the «RESTOperation» but at least on one of them the information has to be defined. |
9111 |
Error |
All input parameters of a «RESTOperation» must have a name. Please fix the issue in your UML model. |
9112 |
Error |
All input parameters that are not explicitly marked as «HeaderParam» , «PathParam» , «BeanParam» etc. are treated as body. However REST only supports one body per request. So please ensure that there is not more than 1 body per request. |
9113 |
Error |
A «RESTOperation» defines a body parameter, however it’s HTTP method does not allow to use a body. |
9114 |
Error |
It’s not allowed to have more than 1 global error response for an OpenAPI specification in an UML model. |
9115 |
Error |
«OpenAPIResponse» types need to define exactly one response type |
9116 |
Error |
«OpenAPIDataType» must have 1 property as long as they are not modeled as composite data types. |
9117 |
Error |
«OpenAPIDataType» must only have primitive types of properties, as long as they are not modeled as composite data types. |
9118 |
Error |
«OpenAPIDataType» must not have multi valued properties, as long as they are not modeled as composite data types. |
9119 |
Error |
«OpenAPIDataType» must not have parent classes. |
9120 |
Error |
When defining a «PathParam» for a «RESTOperation» it is required that path parameters are required. |
9121 |
Error |
«PathParam» must not be defined as multi valued in the UML model. |
9122 |
Warning |
It is strongly recommended that the elements of the UML model have a meaningful documentation ;-) |
9123 |
Error |
When working with so called composite data types then inheritance is not supported for them. |
9124 |
Error |
When modeling attributes in UML it is important that they also have a type. If a type is not defined then code generation is not possible. |
9125 |
Error |
When modeling attributes and associations then it is required that they also have a type. If it is not defined then code generation is not possible. |
9126 |
Error |
When modeling operations of services it is required that they also have a return type. Also case "void" has to be defined in UML model. In addition multi valued primitive types are not supported as return types. |
9127 |
Error |
When modeling parameters of operations it is required that they also have a name. If there are input parameters without a name then code generation is not possible. |
9128 |
Error |
When modeling methods also a return type is required not only for methods that really return something but also in case of void . If a method does not define a return type then code generation is not possible. |
9129 |
Error |
When modeling method then they also have to have a name. Otherwise code generation is not possible. |
9130 |
Error |
All parameters within the UML model need to have a type. Otherwise code generation is not possible. |
9131 |
Error |
When modeling activities you have to ensure that each «JEAFActivity» does not have more than one return parameter. |
9132 |
Error |
When modeling «JEAFComponents» you have to ensure that each component has defined a layer. |
9133 |
Error |
Class that are modeled as «PersistentObject» must have a so called “class id” with a value greater zero. |
9134 |
Error |
When modeling persistent classes and their associations it is required that either both ends of an association have applied stereotype «Role» or none of them. |
9135 |
Error |
When modeling associations between classes then it is required that navigable associations ends have set a role name. Otherwise code generation is not possible. |
9136 |
Error |
«ObjectMapping» is invalid according to the error message |
9137 |
Error |
Minimum value for for Java Bean Validation «DecimalMin» is missing. |
9138 |
Error |
For a specific Java Bean Validation a string-based or numeric target type is expected. |
9139 |
Error |
Maximum value for for Java Bean Validation «DecimalMax» is missing. |
9140 |
Error |
For a specific Java Bean Validation a numeric target type is expected. |
9141 |
Error |
When working with Java Bean Validation «Digit» then the integral and fractional digits have to be defined properly. |
9142 |
Error |
When working with Java Bean Validation «Digit» then the integral and fractional digits have to be defined properly. |
9143 |
Error |
When working with Java Bean Validation «Size» then its minimal size has to be set properly. |
9144 |
Error |
When working with Java Bean Validation «Size» then its maximum size has to be set properly. |
9145 |
Error |
When working with Java Bean Validation «Size» maximum size has to be greater or equal to minimum size. |
9146 |
Error |
When working with Java Bean Validation «Size» then at least minimum or maximum size has to be set. |
9147 |
Error |
For a specific Java Bean Validation a String , Collection and Map target type is expected. |
9148 |
Error |
When working with Java Bean Validation «Pattern» then a regexp pattern has to be set. |
9149 |
Error |
For a specific Java Bean Validation a String target type is expected. |
9150 |
Error |
For a specific Java Bean Validation a boolean target type is expected. |
9151 |
Error |
For a specific Java Bean Validation a date target type is expected. |
9152 |
Warning |
Special stereotype «Ignore» can be used to explicitly exclude model elements from code generation. However this mechanism is intended to be a workaround / short term solution and not a permanent one ;-). Proper solution to this is to clean up your UML model. That’s why a warning is shown during code generation. |
9153 |
Warning |
OpenAPI standard defines that for whatever reason some header fields should not be mentioned in the OpenAPI specification e.g. Authorization header. However from an overall perspective it still might make sense to explicitly model them e.g. if these fields are still required in Java code.Putting it all together in very most cases this warning can be ignored and is only generated to emphasis that these headers did not get “forgotten” in generation of OpenAPI specification but are not added by intention. For further details please also refer to https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#parameterObject |
9154 |
Warning |
JEAF Generator supports to mark various elements in the UML model as deprecated. This information is also added to the generated code and OpenAPI specification. However, there are cases where OpenAPI does not allow to mark an element as deprecated. Namely this is the case for single valued references to other complex types like a 0..1 associations to another object. In this case the generated Java code will still contain the deprecation but the OpenAPI specification will not have "deprecation: true" . Instead only a comment inside the file is created. |
9155 |
Error |
JAX-RS specification only allows to use java.util.List , java.util.Set or java.util.SortedSet for header params but not java.util.Collection . Please fix your UML model so that either List , Set or SortedSet is used for multi valued header fields. |
9156 |
Error |
JAX-RS specification only allows to use java.util.List , java.util.Set or java.util.SortedSet for query params but not java.util.Collection . Please fix your UML model so that either List , Set or SortedSet is used for multi valued query params. |
9157 |
Error |
JEAF Generator supports to also make the public representation of a composite data type visible internally. To do so, a property has to be marked with stereotype «CompositeDataTypePublicField». In addition it is required that the property is of type String. |
9158 |
Error |
JEAF Generator supports so called soft links. They can be used to modularize your model without loosing information about real types. One possibility when using soft links is to use so called custom generic soft links. In this case you can define your own type that should be used to represent the soft link association. This type, however has to be configured in JEAF Generator Maven Plugin. |
9159 |
Warning |
JEAF Generator supports so called OpenAPI Data Types. They can be used a strong type representation for basic types. For OpenAPI Data Types it is strongly recommended that they are immutable. |
9160 |
Error |
And model element can either be marked with stereotype «POJO» or «ServiceObject» but not both of them a the same time. |
9161 |
Warning |
If a model element is marked as deprecated also a description, a since flag and the planned removal date of the deprecation should be provided so that consumers of the classes, services etc. can prepare. |
9162 |
Error |
If a model element is marked as composite data type then a name for the public field representation is required to be set in the model. |
9163 |
Warning |
In case that a class has one or more non-transient bidirectional associations it is not possible to generate equals() and hashCode() as it requires some business knowledge to do so. If equals() and hashCode() are required for such a class then it has to be implemented manually. |
9164 |
Error |
JEAF Generator supports so called soft links. They can be used to modularize and decouple your application. Due to that it does not make sense to use them in combination with bidirectional associations. |
9165 |
Error |
A REST operation path defines one or more path params but not all of them are also present as parameters in the defined REST operation |
9166 |
Error |
A REST operation defines path parameters that are not defined on the operations paths as parameters |
9167 |
Error |
JEAF Generator supports usage of so called Template Bindings in UML which are an equivalent to generics in Java. If a class makes usage of such a template binding then also a parameter substitution has to be defined in the UML model. |
9168 |
Error |
JEAF Generator supports usage of so called Template Bindings in UML which are an equivalent to generics in Java. However in UML it is possible to define more than one template binding per class. This is currently not supported by JEAF Generator. |
9169 |
Error |
Enumerations might have mandatory properties without default values. If an enumeration literal is defined in the UML model and not all mandatory properties without default value are set, then this error message will be used. |
9170 |
Error |
Names of classes, enumerations, properties, parameters and operations must match to regular expression ^([a-zA-Z_$][a-zA-Z\\d_$]*)$ according to Java Language Specification.This means: * it has to start with an letter (lower or upper case), _ or $ * blanks are not allowed * it may contain numbers but not at the beginning |
9171 |
Error |
JEAF Generator supports to split a model into several OpenAPI specifications. If in such a case one OpenAPI specification refers to the types of another one, then a dependency between OpenAPI specs has to be defined in the UML model. If you want you can disable this check using configuration parameter disableOpenAPIDependencyChecks . However, please be aware that not checking dependencies might lead to inconsistent or incorrect OpenAPI specifications. |
9172 |
Error |
When working with OpenAPI specifications then all complex types that are used must belong to an OpenAPI specification. Please make sure that OpenAPI types only use basic types or other OpenAPI types that belong to an OpenAPI specification (same or referenced one). |
9173 |
Error |
JEAF Generator support developers with special code generation for backward compatibility for Java properties. Due to that tagged value generateBackwardCompatibility and successorName of stereotype «JEAFDeprecated» can only be used for properties. |
9174 |
Error |
JEAF Generator support developers with special code generation for backward compatibility for Java properties. Therefore it is possible to define the successor of an already existing property. The name of the successor must match to a real property of the same class. |
9175 |
Error |
JEAF Generator support developers with special code generation for backward compatibility for Java properties. Therefore it is possible to define the successor of an already existing property. The name of the successor must be set. |
9176 |
Error |
JEAF Generator supports to generate NotNull / NotEmpty annotations based on the UML model information for properties and parameters. However, in Java there is no really default which annotatrion to use. So, JEAF Generator explicitly expects that the name of the annotation that should be used is defined in the Maven configuration. |