rest-expanders
4.30.0 (2024-12-18)
Added
- Added new endpoints per API to check if the user or session has one or more access rights.
GET /{apiName}/security/accessrights/{accessRight}
GET /{apiName}/security/accessrights?filter={accessRights}
Changed
- Added default value to
SecurityRight.dataAccessRights
property so it must not be defined if not needed. - Swagger2:
2.2.23 > 2.2.26
- Changes
2.2.24
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.24 - Changes
2.2.25
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.25 - Changes
2.2.26
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.26
- Changes
- Updated
net.democritus:nsx-jaxrs-jersey-support
:1.3.0 > 1.4.0
4.29.0 (2024-09-12)
Fixed
- Added url mapping to expose Swagger UI static files when the standard API is in use.
Changes
- Apache Commons Lang:
3.16.0 > 1.17.0
- Moved servlet/servlet mappings to the dedicated anchors in
web.xml
. - Rolled back registration of connectors outside of web.xml pending a solution for swagger scanner.
4.28.1 (2024-09-03)
Fixed
- Corrected servlet mapping to correctly serve Swagger UI static resources without blocking other filters.
4.28.0 (2024-08-30)
Fixed
- Missing exception in method signature for
SwaggerUIServlet.doGet()
. - SwaggerUI servlet was not appended to
web.xml
.
Changed
- Swagger2:
2.2.22 > 2.2.23
- Changes
2.2.23
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.23
- Changes
- Updated Swagger UI:
5.9.2 > 5.17.14
4.27.0 (2024-08-30)
This release is broken. Please use 4.28.0
instead.
Fixed
- (REST-55)
resourceUri
field in the output model was never set. Though originally used only for GETlist endpoints, it is now set inOutputMapper
for consistency. - References to other elements could contain a
resourceUri
when there was noGET
endpoint to retrieve the resource.
Added
- (REST-89) Added cascading legacy option
legacy.svcapi.exposeWithListOnly
on Field, DataElement and Component, to restore the old behavior of default-exposing fields on the output model when only a listGET
endpoint is available. - (REST-89) Added model validation with warning about using
list
GET
endpoints without resourceGET
endpoints.
Changed
- Use application name instead of dynamically determining it from path in
swagger-initializer.js
. - (REST-86) Replaced Struts2-based routing for SwaggerUI.
4.26.0 (2024-08-08)
Fixed
- Aborted download requests logged IOExceptions as severe errors due to the implementation in Jersey. Implemented a workaround to intercept the exception before it could be logged.
Changed
- Updated dependencies:
net.democritus.metamodel:prime-core
:2024.4.3 > 2024.4.5
4.25.1 (2024-08-07)
Fixed
- Aborted upload requests returned internal server errors instead of ending the request silently.
4.25.0 (2024-08-05)
Fixed
- Dependency on older querysearch resulted in broken model loading if used outside of
rest-jaxrs-stack
without explicitly defining querysearch in expansion settings.
Changed
- Updated dependencies:
net.democritus:nsx-jackson-support
:1.1.0 > 1.2.0
net.democritus:nsx-jaxrs-jersey-support
:1.2.0 > 1.3.0
net.democritus:nsx-runtime
:2024.0.0 > 2024.1.0
net.democritus:querysearch-expanders
:2.27.0 > 3.2.1
net.democritus.metamodel:prime-core
:2024.4.2 > 2024.4.3
4.24.0 (2024-08-03)
Fixed
- Multiple exposed io fields would lead to code that did not compile in the resource mapper.
Changed
- Renamed
UploadReferenceMapper
classes toFileReferenceMapper
. - File fields can now also be exposed when there is no upload functionality, but only download.
- Renamed option
svcapi.field.upload
tosvcapi.endpoint.upload
. - Renamed option
svcapi.field.download
tosvcapi.endpoint.download
. - Options
svcapi.endpoint.upload
andsvcapi.endpoint.download
must now always be used explicitly to indicate that a file field should have the relevant endpoints, even forassets::Asset
. The behavior of exposing default behavior withexposeRestField
has been decoupled from the behavior of generating the endpoints. exposeRestField
now has two additional optional valuesPOST_FILE
andGET_FILE
to specifically expose default functionality for that field when available on the upload and download endpoints.
Removed
- Removed
DELETE
as optional value forexposeRestField
option, since that makes no sense.
4.23.0 (2024-07-31)
Added
- Implemented DataAccess rights for upload and download endpoints.
- Added support for
Access-Control-Expose-Headers
header in theCorsFilterProvider
.
Changed
- Renamed return header for file uploads from
X-UploadFileId
toNS-File-Upload-Id
. - Download endpoints now return a 404 error when the requested file is missing.
- Reworked how references to file resources are returned. They are now always an object with the identifier nested, optionally a filename and when a download endpoint is available also an URI to that endpoint.
4.22.0 (2024-07-27)
Fixed
- (REST-63) Changed functionality that uses finders to default
to
Se
andSne
operators for string identifiers when available instead ofEq
andNe
, with fallback toEq
andNe
for backwards compatibility. - (REST-84) The
AddDefaultRestApi
transmutation added value types as value field types.
Added
- Added model validation to indicate deprecation of OpenAPI 2 support.
- Implemented endpoints for file IO (upload/download) using the new options
svcapi.field.upload
andsvcapi.field.download
on fields to generate stubs for them. - Added new
rest-assets-expanders
resource that provides an implementation for linkfields toassets:Asset
as file io endpoints.
Changed
- Split off
rest-jaxrs-stack
module into a separate project, so it can be released independently. - Updated dependencies:
net.democritus:Expanders
:7.3.1 > 7.6.0
net.democritus:base-components
:2024.2.0 > 2024.3.4
net.democritus.metamodel:prime-core
:2024.3.11 > 2024.4.2
- (REST-63) The transmutations to add an API by default will
now generate finders using
Se
andSne
. - (REST-63) Updated the migration transmutation to add
finders with
Se
for functional key (hidden from knockout UI if newly added) and replace the unique finders that exclude the functional key with the strict operators.
Removed
- Removed example for
sortby
parameter on getList endpoints.
4.21.1 (2024-06-13)
Fixed
- (REST-83) Fixed implementation of
noRestExcludeNull
option, which broke after refactoring.
4.21.0 (2024-06-11)
Fixed
InputValidation.isShort()
checked integer type instead of short type.
Changed
- Updated dependencies:
net.democritus.metamodel:prime-core
:2024.3.8 > 2024.3.11
4.20.2 (2024-06-03)
Fixed
- The call to the
UpdateCommandExtension
was not injected correctly into the logic bean under specific circumstances.
Changed
- Updated dependencies:
net.democritus.metamodel:prime-core
:2024.3.4 > 2024.3.8
4.20.0 (2024-05-30)
Changed
- (REST-82) Migrated expanders to use ValueTypes instead of ValueFieldTypes.
- The
default-implementation
anchors (previously non-functional) in theCommandExtension
classes have been replaced with default feature anchors, allowing the contents of the anchor to be fully replaced by an expander feature. - Updated dependencies:
net.democritus.metamodel:prime-core
:2024.2.3 > 2024.3.4
4.19.0 (2024-05-21)
Changed
- Updated dependencies:
net.democritus:base-components
:2024.0.0 > 2024.2.0
net.democritus:Expanders
:6.6.1 > 7.3.1
net.democritus:nsx-default-stack
:2024.3.8 > 2024.7.1
net.democritus:nsx-jackson-support
:1.0.0 > 1.1.0
net.democritus:nsx-jaxrs-jersey-support
:1.0.0 > 1.2.0
net.democritus:querysearch-expanders
:2.23.1 > 2.27.0
net.democritus.metamodel:prime-core
:2024.1.1 > 2024.2.3
- Swagger2:
2.2.21 > 2.2.22
- Changes
2.2.22
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.22
- Changes
4.18.0 (2024-04-26)
Changed
- Moved Jersey dependencies into
nsx-jaxrs-jersey-support
library. - Downgraded minimum dependencies for rest-expanders:
net.democritus:base-components
:2024.1.4 > 2024.0.0
net.democritus:Expanders
:7.0.6 > 6.6.1
net.democritus:querysearch-expanders
:2.24.0 > 2.23.1
4.17.0 (2024-04-17)
Changed
- Moved Jackson dependencies into
nsx-jackson-support
library. - Updated dependencies:
net.democritus:base-components
:2024.1.3 > 2024.1.4
net.democritus:Expanders
:7.0.5 > 7.0.6
net.democritus:nsx-default-stack
:2024.3.5 > 2024.3.7
4.16.0 (2024-04-05)
Changed
- Updated dependencies:
net.democritus:Expanders
:7.0.4 > 7.0.5
net.democritus:nsx-default-stack
:2024.3.4 > 2024.3.5
4.15.0 (2024-03-28)
Fixed
- (REST-76) Replaced
sortby
parameter on GETlist endpoint with a string with pattern validation in the OpenAPI 3 specification.
Changed
- Updated dependencies:
net.democritus:base-components
:2024.1.1 > 2024.1.3
net.democritus:nsx-default-stack
:2024.3.3 > 2024.3.4
net.democritus.metamodel:prime-core
:2024.1.0 > 2024.1.1
4.14.0 (2024-03-22)
Changed
- Updated dependencies:
net.democritus:Expanders
:7.0.2 > 7.0.4
net.democritus:nsx-default-stack
:2024.3.2 > 2024.3.3
- Updated dependencies:
- Jersey:
2.41 > 2.42
- Changes:
2.42
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.42
- Changes:
- Swagger:
1.6.13 > 1.6.14
- Changes
1.6.14
: https://github.com/swagger-api/swagger-core/releases/tag/v1.6.14
- Changes
- Swagger2:
2.2.20 > 2.2.21
- Changes
2.2.21
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.21
- Changes
- Jersey:
4.13.1 (2024-03-19)
Fixed
- Updated dependencies:
net.democritus:base-components
:2024.1.0 > 2024.1.1
net.democritus:Expanders
:7.0.0 > 7.0.2
net.democritus:nsx-default-stack
:2024.3.0 > 2024.3.2
net.democritus:querysearch-expanders
:2.23.1 > 2.24.0
4.13.0 (2024-03-16)
Changed
- Switched from outdated JavaFaker to DataFaker library for integration tests.
- Updated dependencies in integration testing project.
- Updated dependencies:
net.democritus:base-components
:2024.0.0 > 2024.1.0
net.democritus:Expanders
:6.5.4 > 7.0.0
net.democritus:nsx-default-stack
:2024.1.0 > 2024.3.0
net.democritus:querysearch-expanders
:2.23.0 > 2.23.1
net.democritus.metamodel:prime-core
:2024.0.4 > 2024.1.0
- Jackson:
2.16.1 > 2.17.0
- Changes
2.16.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.16.2 - Changes
2.17.0
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.17.0
- Changes
- JSON:
20231013 > 20240303
- Changes
20240303
: https://github.com/stleary/JSON-java/releases/tag/20240303
- Changes
4.12.0 (2024-02-04)
Changed
- Rely on dynamically assigned default groupId instead of determining default value where used.
- Updated dependencies:
net.democritus:Expanders
:6.4.4 > 6.5.4
net.democritus:nsx-default-stack
:2024.0.1 > 2024.1.0
net.democritus:querysearch-expanders
:2.22.0 > 2.23.0
- Swagger:
1.6.12 > 1.6.13
- Changes
1.6.13
: https://github.com/swagger-api/swagger-core/releases/tag/v1.6.13
- Changes
4.11.0 (2024-01-26)
Fixed
- Updated default groupId following change in Expanders
6.4.3
.
Changed
- Updated dependencies:
net.democritus:Expanders
:6.4.1 > 6.4.4
4.10.0 (2024-01-22)
Changed
- Updated dependencies:
net.democritus:Expanders
:6.4.1 > 6.4.2
net.democritus:nsx-default-stack
:2024.0.0 > 2024.0.1
4.9.0 (2024-01-22)
Changed
- Updated groupId of modules in integration test project to be consistent with the new groupIds in the application. This
includes support for the
maven.groupId
option. - Updated dependencies:
net.democritus:Expanders
:6.2.2 > 6.4.1
net.democritus:nsx-default-stack
:2023.26.1 > 2024.0.0
net.democritus.metamodel:prime-core
:2023.12.0 > 2024.0.4
net.democritus:base-components
:2023.14.4 > 2024.0.0
- Jackson:
2.16.0 > 2.16.1
- Changes
2.16.1
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.16.1
- Changes
- Swagger2:
2.2.19 > 2.2.20
- Changes
2.2.20
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.20
- Changes
- (REST-77) Allow
-
and.
characters in base path of API.
4.8.0 (2023-12-16)
Added
- Added links to the documentation for all option types.
Changed
- Updated dependencies:
- JSON Schema:
1.14.3 > 1.14.4
- Changes
1.14.4
: https://github.com/everit-org/json-schema/releases/tag/1.14.4
- Changes
- JSON Schema:
4.7.0 (2023-12-15)
Fixed
- The implicit metamodel was nog constructed correctly for applications that have multiple programs that use Component.
Changed
- Updated dependencies:
net.democritus:Expanders
:6.0.2 > 6.2.2
net.democritus:nsx-default-stack
:2023.24.2 > 2023.26.1
- (REST-74) Added support for new
audit.create.timestamp
andaudit.modify.timestamp
options that were introduced as an alternative to matching on the field namesenteredAt
andlastModifiedAt
. The behavior remains the same regardless of the field name in the DataElement.
4.6.0 (2023-12-05)
Fixed
- (REST-70) Transmutation to add a REST API to a DataElement would throw an exception in some scenarios.
- (REST-71) Synchronized authentication to avoid user being created twice by separate transactions.
- No longer use
getUserContext()
onAuthenticationResult
.
Changed
- Updated dependencies:
net.democritus:querysearch-expanders
:2.21.0 > 2.22.0
4.5.0 (2023-11-23)
Added
- (REST-68) Added option
jaxrs.querySearch.exposeFilter
to expose a QueryFilterField on theGETlist
endpoint. - (REST-68) Added model validation to ensure that
jaxrs.querySearch.exposeFilter
is used on filters of the correct QuerySearch. - Added description and additional information for several query parameters for OpenAPI 3:
- GETlist
page
parameter: description and minimum value - GETlist
pagesize
parameter: description, minimum and maximum value - GETlist
sortby
parameter: description, validation and an example - GETlist query filter parameters: description (from QueryFilterField)
- GETlist
Changed
- Marked
IllegalDBStateInterceptor
as deprecated and removed it from the default interceptors added inCustomCommandResultInterceptor
. - Marked
IllegalDBStateException
as deprecated as it was only thrown for diagnostics that were never in the default stack. - (REST-8) Fully reworked expanders for exception handling, now based on an implicit metamodel to retrain backwards compatibility while the model is being built out further for version 5 of rest-expanders.
SwaggerOIDCConfig
is now marked final.- Migrated all
javax
imports to the new import system to prepare for migration to JEE9+.
Removed
- Removed deprecated exception handler for
IllegalDBStateException
. - Removed deprecated errors
SE006
andSE009
fromServerError.java
andServerErrorMessages.properties
4.4.0 (2023-11-17)
Changed
- Updated dependencies:
net.democritus:Expanders
:6.0.0 > 6.0.2
net.democritus:nsx-default-stack
:2023.24.0 > 2023.24.2
- Jackson:
2.15.3 > 2.16.0
- Changes
2.16.0
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.16.0
- Changes
4.3.0 (2023-11-15)
This update breaks the API of the SortParameters
class. Though to fix the issue it had, a LinkedHashMap
could be
utilized and retain more compatibility, but since there was no good way of enforcing the use of this type without
breaking backwards compatibility, it was decided to refactor to a list of pairs instead. This may impact custom code
that uses SortParameters
.
Fixed
- When serializing sorting parameters, a
HashMap
was used instead of aLinkedHashMap
, which caused the loss of ordering when passing multiple sorting parameters through the GETlist endpoint.
Changed
- Updated dependencies:
- Swagger2:
2.2.18 > 2.2.19
- Changes
2.2.19
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.19
- Changes
- Swagger2:
SortParameters.getParameters()
now returnsList<ParameterOrder>
instead ofMap<String, SortOrder>
.SortParameters.setParameters()
now takes aList<ParameterOrder>
instead ofMap<String, SortOrder>
.net.democritus.jaxrs.MediaTypes
is now marked final.BaseUrlContext.from(Context)
now throwsContextGroupNotFoundException
instead ofIllegalStateException
if theBaseUrlContext
group was not found in the suppliedContext
object.
4.2.0 (2023-11-10)
Changed
- Updated dependencies:
net.democritus:Expanders
:5.39.0 > 6.0.0
net.democritus:nsx-default-stack
:2023.23.3 > 2023.24.0
4.1.0 (2023-11-09)
Fixed
- Removed
@Override
annotation fromvalidate()
method in Agent class.
Changed
- Updated dependencies:
net.democritus:Expanders
:5.38.0 > 5.39.0
net.democritus:base-components
:2023.14.3 > 2023.14.4
net.democritus:nsx-default-stack
:2023.22.1 > 2023.23.3
net.democritus:querysearch-expanders
:2.20.0 > 2.21.0
net.democritus.metamodel:prime-core
:2023.9.2 > 2023.9.3
- Updated Swagger UI:
4.18.1 > 5.9.2
Removed
- Removed upgrade transmutation for provisioning of DataCommand options for REST API based on the names of those
commands. (If still required, upgrade to
4.0.0
and run upgrade transmutation before upgrading to4.1.0
.)
4.0.0 (2023-11-07)
This version contains breaking changes. Please refer to the migration guide in the documentation for more information about these changes and what code is affected.
Changed
- The transmutation to create a default REST API will now create a QuerySearch model for a DataElement if not present.
- The upgrade transmutation for the REST API will now create the explicit QuerySearch model.
- Updated dependencies:
net.democritus:Expanders
:5.37.2 > 5.38.0
net.democritus:base-components
:2023.14.2 > 2023.14.3
net.democritus:nsx-default-stack
:2023.21.1 > 2023.22.1
net.democritus:querysearch-expanders
:2.18.0 > 2.20.0
net.democritus.metamodel:prime-core
:2023.9.1 > 2023.9.2
- Updated dependencies:
- Jersey:
2.40 > 2.41
- Changes:
2.41
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.41
- Changes:
- Swagger:
1.6.11 > 1.6.12
- Changes
1.6.12
: https://github.com/swagger-api/swagger-core/releases/tag/v1.6.12
- Changes
- Swagger2:
2.2.17 > 2.2.18
- Changes
2.2.18
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.18
- Changes
- JSON Schema:
1.14.2 > 1.14.3
- Changes
1.14.3
: https://github.com/everit-org/json-schema/releases/tag/1.14.3
- Changes
- Jersey:
Removed
- Removed implicit QuerySearch model created based on
includeJaxrsConnector
option. - Removed implicit provisioning of DataCommand options for the REST API.
- Removed model validation to check if the DataCommands are marked with options for JAX-RS.
3.33.0 (2023-10-15)
Changed
- Updated dependencies:
net.democritus:Expanders
:5.37.1 > 5.37.2
net.democritus:nsx-default-stack
:2023.21.0 > 2023.21.1
- Jackson:
2.15.2 > 2.15.3
- Changes
2.15.3
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15.3
- Changes
- Swagger2:
2.2.16 > 2.2.17
- Changes
2.2.17
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.17
- Changes
- JSON:
20230618 > 20231013
- Changes
20231013
: https://github.com/stleary/JSON-java/releases/tag/20231013
- Changes
3.32.0 (2023-10-13)
Changed
- Updated dependencies:
net.democritus:Expanders
:5.37.1 > 5.37.2
net.democritus:nsx-default-stack
:2023.21.0 > 2023.21.1
3.31.0 (2023-10-12)
Changed
- The
DatabaseValidator
andInputValidation
classes are now final. - Updated dependencies:
net.democritus:Expanders
:5.36.7 > 5.37.1
net.democritus:base-components
:2023.13.0 > 2023.14.0
net.democritus.metamodel:prime-core
:2023.8.0 > 2023.9.1
net.democritus:nsx-default-stack
:2023.20.0 > 2023.21.0
3.30.0 (2023-10-11)
Changed
- Replaced uses of deprecated methods in expander templates:
net.palver.util.StringUtil.join()
net.palver.util.StringUtil.split()
- Updated dependencies:
net.democritus:Expanders
:5.36.1 > 5.36.7
net.democritus:nsx-default-stack
:2023.19.1 > 2023.20.0
net.democritus.metamodel:prime-core
:2023.7.0 > 2023.8.0
3.29.1 (2023-09-27)
Fixed
- Removed deprecated support for remote-only ejb policy, which is not supported by the stack.
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.19.0 > 2023.19.1
(deprecated options used in base-components)
3.29.0 (2023-09-23)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.18.1 > 2023.19.0
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.35.1 > 5.36.1
net.democritus.metamodel:prime-core
:2023.7.0 > 2023.8.0
3.28.1 (2023-09-22)
Fixed
- Updates to fix dependency on snapshot:
net.democritus:nsx-default-stack
:2023.17.1 > 2023.18.1
net.democritus:Expanders
:5.35.0 > 5.35.1
3.28.0 (2023-09-21)
Fixed
- Updated module dependency feature to use the new groupIds used by Expanders for the component modules.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.15.2 > 2023.17.1
net.democritus:querysearch-expanders
:2.17.2 > 2.18.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.10.0 > 2023.11.0
net.democritus:Expanders
:5.32.1 > 5.35.0
net.democritus.metamodel:prime-core
:2023.5.3 > 2023.7.0
net.democritus:querysearch-expanders
:2.17.2 > 2.18.0
- Updated dependencies:
- Swagger2:
2.2.15 > 2.2.16
- Changes
2.2.16
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.16
- Changes
- Swagger2:
3.27.0 (2023-08-30)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.14.4 > 2023.15.2
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.8.2 > 2023.10.0
net.democritus:Expanders
:5.30.5 > 5.32.1
3.26.0 (2023-08-09)
Fixed
- Reverted deprecation of
DataFacade
methods and re-added calls toDataFacade.findById()
andDataFacade.findDetailsById()
due to the new implementation not covering all functionality that was previously available.
Changed
- Updated dependencies:
- Snakeyaml:
2.0 > 2.1
- Snakeyaml:
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.30.4 > 5.30.5
3.25.0 (2023-07-29)
Fixed
RemoveElementCommandExtension
now callsAgent.delete(DataRef)
instead of the deprecatedAgent.delete(Long)
.- Updated
since
value for deprecation notice on ResourceNotFoundException constructor to fully-qualified name of expansion resource. - Removed two imports of
net.palver.util.Options
that were left behind without any apparent uses.
Changed
- Replaced all code calling
DataFacade.findById()
and marked the method as deprecated for removal. - Replaced all code calling
DataFacade.findDetailsById()
and marked the method as deprecated for removal. - Marked the expanded
DataFacade
deprecated for removal as all expanded methods inside have been marked deprecated. This class will be removed in a future update. - Updated stack dependency:
net.democritus:nsx-default-stack
:2023.14.1 > 2023.14.4
net.democritus:querysearch-expanders
:2.16.0 > 2.17.2
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.8.1 > 2023.8.2
net.democritus:Expanders
:5.30.1 > 5.30.4
net.democritus.metamodel:prime-core
:2023.5.2 > 2023.5.3
net.democritus:querysearch-expanders
:2.16.0 > 2.17.2
- (REST-66) Improved experimental support for sorting on Ln02
linkfields that have
exposeRestField
. Rows for which the link isnull
are no longer excluded.
3.24.0 (2023-07-16)
Fixed
- Improved code for checking result of
GET
call with the newSearchResult.getFirstResult()
method.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.14.0 > 2023.14.1
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.30.0 > 5.30.1
3.23.0 (2023-07-12)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.13.0 > 2023.14.0
net.democritus:querysearch-expanders
:2.15.0 > 2.16.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.7.0 > 2023.8.1
net.democritus:Expanders
:5.29.0 > 5.30.0
net.democritus:querysearch-expanders
:2.15.0 > 2.16.0
- Migrated expanded code for OIDC following breaking change in Expanders.
3.22.0 (2023-07-11)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.12.0 > 2023.13.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.6.0 > 2023.7.0
net.democritus:Expanders
:5.28.1 > 5.29.0
- Updated dependencies:
- Swagger2:
2.2.14 > 2.2.15
- Changes
2.2.15
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.15
- Changes
- Swagger2:
3.21.0 (2023-07-04)
Added
- Added SCM information.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.11.0 > 2023.12.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.4.0 > 2023.6.0
net.democritus:Expanders
:5.27.0 > 5.28.1
net.democritus.metamodel:prime-core
:2023.4.1 > 2023.5.2
- Updated dependencies:
- Swagger2:
2.2.13 > 2.2.14
- Changes
2.2.14
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.14
- Changes
- Swagger2:
3.20.0 (2023-06-26)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.10.1 > 2023.11.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.4.0 > 2023.5.0
net.democritus:Expanders
:5.26.1 > 5.27.0
- Replaced most uses of
SearchResult.getFirst()
withSearchResult.getFirstResult()
.
3.19.0 (2023-06-26)
Added
- New constructor
ResourceNotFoundException(List<ValidationFieldError>)
that takes a list of errors.
Changed
- Refactored code to use
Context.find()
instead ofContext.getContext()
. These changes do not have any impact on any custom code. - Constructor
ResourceNotFoundException(ValidationFieldError)
marked as deprecated. - Updated stack dependency:
net.democritus:nsx-default-stack
:2023.10.0 > 2023.10.1
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.26.0 > 5.26.1
- Updated dependencies:
- Swagger2:
2.2.12 > 2.2.13
- Changes
2.2.13
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.13
- Changes
- Jersey:
2.39.1 > 2.40
- Changes:
2.40
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.40
- Changes:
- Swagger2:
- Cleaned up some code in GET endpoint implementations, so it uses the new constructor for
ResourceNotFoundException
and does not trigger SonarLint.
Removed
- Removed long-deprecated method
ResourceNotFoundException.getValidationError()
.
3.18.0 (2023-06-20)
This version contains several breaking changes. Please refer to the migration guide in the documentation for more information about these changes and what code is affected.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.9.2 > 2023.10.0
net.democritus:querysearch-expanders
:2.14.1 > 2.15.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.3.1 > 2023.4.0
net.democritus:Expanders
:5.24.0 > 5.26.0
net.democritus.metamodel:prime-core
:2023.4.0 > 2023.4.1
net.democritus:querysearch-expanders
:2.14.1 > 2.15.0
- Updated dependencies:
- Swagger2:
2.2.11 > 2.2.12
- Changes
2.2.12
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.12
- Changes
- JSON:
20230227 > 20230618
- Changes
20230618
: https://github.com/stleary/JSON-java/releases/tag/20230618
- Changes
- Swagger2:
- Replaced use of
net.democritus.sys.Options.Option
withjava.util.Optional
in:<dataElement>CommonDataValidator.validate<dataElement>Exists()
<dataElement><operation>DataValidator.validate<dataElement>Exists()
<dataElement><operation>DataValidator.validate<dataElement>Unique()
ValidationResult.getFirstError()
DatabaseValidator.existsProjection()
DatabaseValidator.existsDataRef()
DatabaseValidator.isUniqueProjection()
DatabaseValidator.isUniqueDataRef()
DatabaseValidator.connectedProjection()
DatabaseValidator.connectedDataRef()
3.17.0 (2023-06-14)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.9.0 > 2023.9.2
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.24.0 > 5.25.1
- Updated dependencies:
- Jackson:
2.15.1 > 2.15.2
- Changes
2.15.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15.2
- Changes
- Swagger2:
2.2.10 > 2.2.11
- Changes
2.2.11
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.11
- Changes
- Jackson:
3.16.0 (2023-05-31)
Fixed
- Fixed data resource type for
JAXRS
technology.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.8.2 > 2023.9.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2023.3.1 > 2023.3.2
net.democritus:Expanders
:5.23.2 > 5.24.0
net.democritus.metamodel:prime-core
:2023.3.4 > 2023.4.0
3.15.0 (2023-05-25)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.6.4 > 2023.8.2
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2022.10.5 > 2023.3.1
net.democritus:Expanders
:5.22.2 > 5.23.2
net.democritus.metamodel:prime-core
:2023.2.3 > 2023.3.4
- Updated dependencies:
- Jackson:
2.15.0 > 2.15.1
- Changes
2.15.1
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15.1
- Changes
- Swagger:
1.6.10 > 1.6.11
- Changes
1.6.11
: https://github.com/swagger-api/swagger-core/releases/tag/v1.6.11
- Changes
- Swagger2:
2.2.9 > 2.2.10
- Changes
2.2.10
: https://github.com/swagger-api/swagger-core/releases/tag/v2.2.10
- Changes
- Jackson:
3.14.0 (2023-04-27)
Fixed
- Fixed typo in expanded
ValidationErrorMessages.properties
file.
Changed
- Updated dependencies:
- Jackson:
2.14.2 > 2.15.0
- Changes
2.15.0
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.15.0
- Changes
- JSON Schema:
1.14.1 > 1.14.2
- Changes
1.14.2
: https://github.com/everit-org/json-schema/releases/tag/1.14.2
- Changes
- Jackson:
- Updated dependencies in integration test project.
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.6.2 > 2023.6.4
net.democritus:querysearch-expanders
:2.13.0 > 2.14.1
- Reworked expanders to expand based on
Application
instead ofApplicationInstance
.
3.13.0 (2023-04-25)
Fixed
- Some changes in spec filter caused issues because the filter is executed repeatedly.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.6.0 > 2023.6.2
3.12.0 (2023-04-20)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.4.2 > 2023.6.0
3.11.1 (2023-04-13)
Fixed
- (REST-61)
enteredAt
andlastModifiedAt
were not mapped correctly ascreated
andlastModified
in theSortFieldMapper
, to be consistent with naming in the output model. - (REST-60) Removed
apiResponse-annotations
anchors for OpenAPI 3 in Connector class + moved all@ApiResponse
annotations to the endpoint methods directly.
3.11.0 (2023-04-11)
Fixed
- Moved anonymous check in
AuthorizationProvider
beforefilter
anchors and return in the condition when anonymous access is allowed, as the filtering typically happens based on the UserContext, which is empty for anonymous users. - (REST-59) Added missing response for
GET
endpoints to OpenApi 3.x spec.
Changed
- Removed expired legacy option
legacy.annotations.reenable
. - Updated stack dependency:
net.democritus:nsx-default-stack
:2023.3.5 > 2023.4.2
- Updated dependencies:
- Jersey:
2.38 > 2.39.1
- Changes:
2.39.1
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.39.1 - Changes:
2.39
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.39
- Changes:
- Jersey:
3.10.3 (2023-04-06)
Fixed
- Url for server in OpenAPI specification was not always generated correctly.
3.10.2 (2023-03-27)
Fixed
- OpenApi annotation for byte array fields in output model used an incorrect property.
- Use
@Schema(requiredMode)
instead of deprecated@Schema(required)
.
3.10.1 (2023-03-23)
Fixed
- The
SearchFailedInterceptor
threw aDeleteFailedException
instead of aSearchFailedException
. - The
ModificationFailedInterceptor
threw aDeleteFailedException
instead of aModificationFailedException
.
3.10.0 (2023-03-21)
This version contains several breaking changes. Please refer to the migration guide in the documentation for more information about these changes and what code is affected.
Fixed
- (REST-58)
@SecurityRight
annotations are now always added to every expanded REST endpoint. The annotation now has anchors to add parameters. - (REST-41)
"
characters are now escaped in model descriptions that are expanded into Java annotations. - (REST-56) The
AuthorizationProvider
now throws ajavax.ws.rs.ForbiddenException
instead of anet.democritus.jaxrs.exception.NotAuthorizedException
whenaccount::DataAccess
is used for security and no matching right was found for the user. This is translated to a 403 Forbidden error instead of 401 Not Authorized, indicating that re-authentication will not change the outcome of the call. - When
account::DataAccess
is used for authentication, failing to retrieve the access rights from the database will now result in a 500 Internal Server Error instead of a 401 Not Authorized Error.
Added
- (REST-10) Added support (and defaulting to) OpenAPI version 3.0. Experimental support for OpenAPI 3.1 is included, but does not function with Swagger UI at this time.
- Added
snakeyml
version2.0
as direct dependency to address CVE-2022-1471.
Changed
- Updated Swagger UI:
4.15.5 > 4.18.1
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.3.0 > 2023.3.5
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.17.1 > 5.19.5
BaseUrlProvider
now falls back toHost
header whenX-Forwarded-Host
is not set.- Updated dependencies:
- Swagger:
1.6.9 > 1.6.10
- Changes
1.6.10
: https://github.com/swagger-api/swagger-core/releases/tag/v1.6.10
- Changes
- JSON:
20220924 > 20230227
- Changes
20230227
: https://github.com/stleary/JSON-java/releases/tag/20230227
- Changes
- Swagger:
3.9.1 (2023-02-21)
Fixed
- CustomCommandResultInterceptor class no longer compiled when option
enableValidation
is not present.
3.9.0 (2023-02-20)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.1.1 > 2023.3.0
- Updated expander dependencies (minimum version):
net.democritus.metamodel:prime-core
:2023.0.2 > 2023.0.3
3.8.1 (2023-02-19)
Fixed
- (REST-57) There was still some leftover code that used the dataElement name for the remove command in the delete endpoint instead of the command matched by the
jaxrs.command.delete
option.
3.8.0 (2023-02-10)
Fixed
imports
andannotations
feature anchors were not added toPaginatedResponse
class.- Transmutation to add a default API overwrite the value of the
generateUuid
option. - Transmutation to add a default API added the
generateUuid
option whenisUnique
was already present, which could be intentional. - Custom code was broken by changes in the
DiagnosticInterceptor
class. Added deprecated default method for backwards compatibility.
Added
- Added a model validation to detect hasTargetInstance set to true on commands used for the REST API.
- Added new options
jaxrs.command.create
,jaxrs.command.modify
,jaxrs.command.update
andjaxrs.command.remove
to mark the commands for generatedPOST
,PUT
,PATCH
andDELETE
endpoints respectively. - Added a model validation to warn about commands that are not marked with the new
jaxrs.command.<operation>
options. - Added a temporary implicit model transformation to add the new
jaxrs.command.<operation>
options to commands for backwards compatibility. - Added transmutation to upgrade model for changes in rest-expanders.
Changed
- Updated dependencies:
- Jackson:
2.14.1 > 2.14.2
- Changes
2.14.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.14.2
- Changes
- Jackson:
- Updated stack dependency:
net.democritus:nsx-default-stack
:2023.0.6 > 2023.1.1
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.16.5 > 5.17.1
net.democritus.metamodel:prime-core
:2022.11.1 > 2023.0.2
- Transmutation to add a default API now adds options
cruds.table.hide
andcruds.form.hide
to a fields where it addsgenerateUuid
.
3.7.0 (2023-01-29)
This version contains a breaking change. Please refer to the migration guide in the documentation for more information about these changes and what code is affected.
Added
- Added support for the new UniqueConstraints introduced in the elements model. As of right now, this is only
supplementary support. The
isUnique
option is still required.
Changed
- Updated dependencies:
- Jersey:
2.37 > 2.38
- Changes:
2.38
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.38
- Changes:
- Jersey:
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.16.1 > 2023.0.6
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.15.0 > 5.16.5
net.democritus.metamodel:prime-core
:2022.10.9 > 2022.11.1
- Moved several previously expanded classes to shared libraries (and as such, new package names):
<componentName>.jaxrs.command.DiagnosticInterceptor > net.democritus.jaxrs.command.DiagnosticInterceptor
<componentName>.jaxrs.command.CompositeDiagnosticInterceptor > net.democritus.jaxrs.command.CompositeDiagnosticInterceptor
<componentName>.jaxrs.command.CreationFailedInterceptor > net.democritus.jaxrs.command.CreationFailedInterceptor
<componentName>.jaxrs.command.DeletionFailedInterceptor > net.democritus.jaxrs.command.DeletionFailedInterceptor
<componentName>.jaxrs.command.ModificationFailedInterceptor > net.democritus.jaxrs.command.ModificationFailedInterceptor
<componentName>.jaxrs.command.SearchFailedInterceptor > net.democritus.jaxrs.command.SearchFailedInterceptor
<componentName>.jaxrs.command.IllegalDBStateInterceptor > net.democritus.jaxrs.command.IllegalDBStateInterceptor
3.6.0 (2023-01-05)
This version contains breaking changes. Some anchors in Swagger UI were moved to a different file. Please refer to the migration guide in the documentation for more information about all breaking changes in this release.
Fixed
- (REST-54) Use new struts stack for Swagger UI to avoid issues with COOP headers.
- (REST-35) Inline JavaScript code for Swagger UI was moved to separate file due to upgrade to the latest version.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.15.1 > 2022.16.1
- Updated Swagger UI:
3.52.5 > 4.15.5
3.5.0 (2022-11-29)
Fixed
- Fixed issue where an implicit QuerySearch object would still be created, even if a DataElement already has a QuerySearch element marked with
jaxrs.querySearch
. - Several expanders did not correctly use the QuerySearch metamodel to generate files.
Added
- New model validation to verify that a DataElement only has one QuerySearch element marked with
jaxrs.querySearch
.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.15.0 > 2022.15.1
3.4.0 (2022-11-25)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.14.4 > 2022.15.0
net.democritus:querysearch-expanders
:2.13.0 > 2.13.1
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.14.2 > 5.15.0
net.democritus.metamodel:prime-core
:2022.10.3 > 2022.10.9
3.3.0 (2022-11-24)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.14.2 > 2022.14.4
- Updated dependencies:
- Swagger:
1.6.8 > 1.6.9
- Jackson:
2.13.4 > 2.14.1
- Swagger:
3.2.0 (2022-11-04)
Fixed
- (REST-24) Added support to expose fields that use custom valuetypes. There is no support for validation with those types.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.14.0 > 2022.14.2
- The custom and feature anchors in the
PostInputMapper
,PutInputMapper
andPatchInputMapper
classes switched position.
3.1.0 (2022-11-02)
Changed
- Updated dependencies:
- Jackson (
jackson-databind
):2.13.4 > 2.13.4.2
(CVE-2022-42003)
- Jackson (
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.13.6 > 2022.14.0
3.0.0 (2022-10-21)
This version contains breaking changes. Expansion should now be ran with Java 17 and applications should target Java 17. Please refer to the migration guide in the documentation for more information about all breaking changes in this release.
Fixed
- (REST-36) Fixed missing return character between imports for linked element fields.
- (REST-36) No longer using LocalAgent to access links to elements in different components.
Added
- Added transmutations to provision a default REST API for a complete Component or individual DataElements that are already part of a REST-enabled Component.
- Added custom anchors to
web.xml
to register individual provider classes for JAX-RS. - Added several model validations to verify some conditions required to generate a REST API.
- Added new shared libraries for common classes provided by the rest-expanders.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.12.4 > 2022.13.6
net.democritus:querysearch-expanders
:2.10.0 > 2.13.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2022.6.0 > 2022.10.5
net.democritus:Expanders
:5.14.0 > 5.14.2
net.democritus:querysearch-expanders
:2.9.1 > 2.13.0
net.democritus.metamodel:prime-core
:2022.8.0 > 2022.10.3
- Moved dependencies for validation and swagger to data resources.
- Dependencies
json
andeverit-json-schema
were moved to theCONTROL
andLOGIC
layers, rather thanSHARED
. They are specific technologies that are only used there for validation. - Replaced Jetbrains Annotations with NotNull/Nullable from nsx-runtime and removed usage of the other annotations from this library. Can be re-enabled until 2023-04-07 using the
legacy.annotations.reenable
option on ApplicationInstance. - Generated
Connector
classes are now final. - Updated dependencies:
- Swagger:
1.6.6 > 1.6.8
- JSON:
20190722 > 20220924
- Changes
20200518
: https://github.com/stleary/JSON-java/releases/tag/20200518 - Changes
20201115
: https://github.com/stleary/JSON-java/releases/tag/20201115 - Changes
20210307
: https://github.com/stleary/JSON-java/releases/tag/20210307 - Changes
20211205
: https://github.com/stleary/JSON-java/releases/tag/20211205 - Changes
20220320
: https://github.com/stleary/JSON-java/releases/tag/20220320 - Changes
20220924
: https://github.com/stleary/JSON-java/releases/tag/20220924
- Changes
- JSON Schema:
1.9.2 > 1.14.1
- Changes
1.10.0
: https://github.com/everit-org/json-schema/releases/tag/1.10.0 - Changes
1.11.0
: https://github.com/everit-org/json-schema/releases/tag/1.11.0 - Changes
1.11.1
: https://github.com/everit-org/json-schema/releases/tag/1.11.1 - Changes
1.12.0
: https://github.com/everit-org/json-schema/releases/tag/1.12.0 - Changes
1.12.1
: https://github.com/everit-org/json-schema/releases/tag/1.12.1 - Changes
1.12.2
: https://github.com/everit-org/json-schema/releases/tag/1.12.2 - Changes
1.13.0
: https://github.com/everit-org/json-schema/releases/tag/1.13.0 - Changes
1.14.0
: https://github.com/everit-org/json-schema/releases/tag/1.14.0 - Changes
1.14.1
: https://github.com/everit-org/json-schema/releases/tag/1.14.1
- Changes
- Apache Commons Lang:
3.9 > 1.12.0
- Swagger:
- Updated dependencies in integration testing project:
annotations
:19.0.0 > 23.0.0
jackson
:2.10.0 > 2.13.4
junit
:4.13 > 4.13.2
nsx-runtime
:2020.9.0 > 2022.3.0
rest-assured
:4.3.0 > 5.2.0
- Updated minimum Java version of integration test project to 17.
- Moved several previously expanded classes to shared libraries (and as such, new package names):
<componentName>.context.BaseUrlContext > net.democritus.jaxrs.context.BaseUrlContext
<componentName>.context.JaxNsContext > net.democritus.jaxrs.context.JaxNsContext
<componentName>.exception.CorsForbiddenException > net.democritus.jaxrs.exception.CorsForbiddenException
<componentName>.exception.CreateFailedException > net.democritus.jaxrs.exception.CreateFailedException
<componentName>.exception.DeleteFailedException > net.democritus.jaxrs.exception.DeleteFailedException
<componentName>.exception.IllegalDBStateException > net.democritus.jaxrs.exception.IllegalDBStateException
<componentName>.exception.IllegalSortParametersFormatException > net.democritus.jaxrs.exception.IllegalSortParametersFormatException
<componentName>.exception.IllegalTimestampFormatException > net.democritus.jaxrs.exception.IllegalTimestampFormatException
<componentName>.exception.MalformedHeaderException > net.democritus.jaxrs.exception.MalformedHeaderException
<componentName>.exception.ModificationFailedException > net.democritus.jaxrs.exception.ModificationFailedException
<componentName>.exception.NotAuthorizedException > net.democritus.jaxrs.exception.NotAuthorizedException
<componentName>.exception.SearchResultException > net.democritus.jaxrs.exception.SearchResultException
<componentName>.exception.UnknownSortParameterException > net.democritus.jaxrs.exception.UnknownSortParameterException
<componentName>.jaxrs.MediaTypes > net.democritus.jaxrs.MediaTypes
<componentName>.jaxrs.provider.BaseUrlProvider > net.democritus.jaxrs.proxy.param.BaseUrlProvider
<componentName>.jaxrs.provider.param.DateParamConverter > net.democritus.jaxrs.provider.param.DateParamConverter
<componentName>.jaxrs.provider.param.DateParamProvider > net.democritus.jaxrs.provider.param.DateParamProvider
<componentName>.jaxrs.provider.param.SortParamConverter > net.democritus.jaxrs.provider.param.SortParamConverter
<componentName>.jaxrs.provider.param.SortParamProvider > net.democritus.jaxrs.provider.param.SortParamProvider
<componentName>.jaxrs.sorting.SortOrder > net.democritus.jaxrs.sorting.SortOrder
<componentName>.jaxrs.sorting.SortParameters > net.democritus.jaxrs.sorting.SortParameters
- Resolved several issues in implementation of
BaseUrlProvider
to handle proxy headers.
Removed
- The legacy option
jaxrs.transient.generateFacade.enable
to generate the oldFacade
classes in theCONTROL
layer has been removed. - Removed dependency on template in main expanders.
- Removed uses of
ClassBuilder
from mappings. - Removed broken
componentPackage
option. - Removed expansion step that pruned the legacy command coupling through custom anchors in the logic bean.
2.20.0 (2022-09-27)
Changed
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.13.1 > 5.14.0
net.democritus.metamodel:prime-core
:2022.6.0 > 2022.8.0
- Option
enableJaxrs
now has default value defined in option type. - The dependency on
javassist
needed by Jersey is no longer excluded, as it is not included with Hibernate 5 (now the default). - Updated dependencies:
- Jersey:
2.35 > 2.37
- Changes:
2.36
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.36 - Changes:
2.37
: https://github.com/eclipse-ee4j/jersey/releases/tag/2.37
- Changes:
- Jackson:
2.13.3 > 2.13.4
- Changes
2.13.4
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.13.4
- Changes
- Jersey:
2.19.1 (2022-09-21)
Fixed
- Updated stack dependency to restore hamcrest 2 dependency in application:
net.democritus:nsx-default-stack
:2022.12.3 > 2022.12.4
2.19.0 (2022-09-21)
Fixed
- Fixed contract for
PaginatedResponse.builder()
.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.12.2 > 2022.12.3
net.democritus:querysearch-expanders
:2.9.1 > 2.10.0
2.18.0 (2022-09-09)
Changed
- Moved Jetbrains annotations library into data resources with a dedicated layer implementation.
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.11.0 > 2022.12.2
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.11.0 > 5.13.1
Removed
- Removed the
hamcrest
test dependency for expanded projects, as nsx-runtime now provides version2.2
as well.
2.17.1 (2022-09-06)
Fixed
- Invalid code was generated in the
ValidationBean
when multiple identifiers are used in an endpoint path.
2.17.0 (2022-08-30)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.10.2 > 2022.11.0
2.16.3 (2022-08-18)
Fixed
- Added missing options
jaxrs.endpoint.getList.sorting.disable
,jaxrs.querySearch.projection
andjaxrs.account.accessControl.defaultRights
to data resources. - Implicit QuerySearch elements were still being creating when explicitly defining a QuerySearch element when the option
jaxrs.querySearch
. - When using the option
jaxrs.querySearch.projection
, the correct projection was not set inSearchDetails
. - The use of explicit QuerySearch elements for the JAX-RS stack did not use the correct QuerySearch implementation if the name differs from that of its parent DataElement.
2.16.2 (2022-08-11)
Fixed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.10.1 > 2022.10.2
(Dependency on SNAPSHOT)
2.16.1 (2022-08-11)
Fixed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.10.0 > 2022.10.1
(Dependency on SNAPSHOT)
2.16.0 (2022-08-10)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.9.2 > 2022.10.0
2.15.0 (2022-08-08)
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.8.1 > 2022.9.2
- Updated expander dependencies (minimum version):
net.democritus:Expanders
:5.9.3 > 5.11.0
2.14.0 (2022-06-15)
Changed
- Process
includeJaxrsConnector
option fromOption
(alongsideDataOption
for backwards compatibility). - Updated stack dependency:
net.democritus:nsx-default-stack
:2022.7.1 > 2022.8.1
net.democritus:querysearch-expanders
:2.9.0 > 2.9.1
- Updated expander dependencies (minimum version):
net.democritus:querysearch-expanders
:2.9.0 > 2.9.1
2.13.0 (2022-06-14)
This version contains a breaking change. Please refer to the migration guide in the documentation for more information about these changes and what code is affected.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.7.0 > 2022.7.1
net.democritus:querysearch-expanders
:2.8.0 > 2.9.0
- Updated expander dependencies (minimum version):
net.democritus:querysearch-expanders
:2.8.0 > 2.9.0
- Switch all usage of options to the new Option/OptionType elements introduced in
prime-core
. This should not affect projects. - Use standard JAX-RS annotation for PATCH method, now that it is available.
Removed
- Removed the transient backwards-compatibility option
jaxrs.transient.exposeDiagnostics.enable
that was introduced in version1.15.0
. (See migration guide) - Removed the transient backwards-compatibility option
jaxrs.transient.useQualifiedNames.disable
that was introduced in version1.13.0
. (See migration guide) - Removed generated
PATCH
annotation class in favor of new standard JAX-RS annotation.
2.12.0 (2022-05-30)
Changed
- Updated dependencies:
- Jersey:
2.34 > 2.35
- Jackson:
2.12.2 > 2.13.3
- Changes
2.12.3
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.3 - Changes
2.12.4
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.4 - Changes
2.12.5
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.5 - Changes
2.12.6
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.6 - Changes
2.12.7
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.7 - Changes
2.13
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.13 - Changes
2.13.1
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.13.1 - Changes
2.13.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.13.2 - Changes
2.13.3
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.13.3
- Changes
- Swagger:
1.6.3 > 1.6.6
- Jersey:
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.5.1 > 2022.7.0
net.democritus:querysearch-expanders
:2.7.0 > 2.8.0
- Updated expander dependencies (minimum version):
net.democritus:base-components
:2021.4.4 > 2022.6.0
net.democritus:Expanders
:5.2.7 > 5.9.3
net.democritus.metamodel:prime-core
:2022.4.0 > 2022.5.6
net.democritus:querysearch-expanders
:2.6.0 > 2.8.0
2.11.1 (2022-05-23)
Fixed
- Renamed several anchors in integration project
pom.xml
files by adding missing prefixcustom-
.
2.11.0 (2022-05-13)
This version requires a minimum prime-core
version of 2022.4.0
and expanders-maven-plugin
version of 2022.1.3
!
Added
- (REST-40) Support for sorting Ln02 link fields by name.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.2.1 > 2022.5.1
2.10.1 (2022-02-29)
Fixed
- Double
ApiModelProperty
annotation in output models under certain circumstances.
2.10.0 (2022-02-29)
Added
apiAll
as a wildcard security right which is applies for all (generated) endpoints when the optionjaxrs.account.accessControl.enable
is used.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.1.6 > 2022.2.1
2.9.0 (2022-01-28)
Added
custom-convert-before
anchors inConnector
class@Api
annotation.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2022.1.0 > 2022.1.6
2.8.1 (2022-01-24)
Fixed
- (REST-44) Default implementation with
exposeRestField
now assumes that an empty string is a null reference for link fields onPOST
,PUT
andPATCH
calls. - (REST-43) The
resourceContext
field in theIllegalTimestampFormatExceptionHandler
class was not populated when called from another exception handler.
2.8.0 (2022-01-14)
Fixed
- Double
ApiModelProperty
annotation in output models under certain circumstances. - Added missing
ApiModelProperty
type definition for byte array fields in input models.
Changed
- Updated stack dependency:
net.democritus:nsx-default-stack
:2021.10.5 > 2022.1.0
net.democritus:querysearch-expanders
:2.6.0 > 2.7.0
- The
rest-jaxrs-stack
now no longer directly depends onnet.nemocritus:Expanders
andnet.democritus:base-components
. Because of this, these dependencies will now only be updated fornet.democritus:rest-expanders
when an update is required. Therest-jaxrs-stack
will always depend on the latestnsx-default-stack
at the time of release.
2.7.0 (2021-10-30)
Fixed
- Add a nonce parameter to OAuth request in Swagger UI.
Changed
- Updated expander dependency:
net.democritus:Expanders
:5.2.4 > 5.2.7
net.democritus:base-components
:2021.4.3 > 2021.4.4
net.democritus:nsx-default-stack
:2021.10.3 > 2021.10.5
- Added support for OpenID Connect (with password grant) in integration testing project.
- Updated dependencies:
- Swagger:
1.6.2 > 1.6.3
- Swagger:
- Changed OAuth2 flow in Swagger UI to accessCode.
2.6.1 (2021-10-23)
Fixed
SwaggerOIDCConfigRetrieverExpander
template did not escape regular expression correctly.
2.6.0 (2021-10-22)
Fixed
- (REST-37) Fixed parsing of the user credentials for basic authentication.
Added
- (REST-38) Added support for OIDC authentication with ID token.
Changed
- (REST-6) Integrated the expanders from the
rest-basic-auth-expanders
into therest-account-security-expanders
. - Updated expander dependency:
net.democritus:Expanders
:5.2.0 > 5.2.4
net.democritus:base-components
:2021.3.1 > 2021.4.3
net.democritus:nsx-default-stack
:2021.9.4 > 2021.10.3
- Updated Swagger UI:
3.22.2 > 3.52.5
Removed
- (REST-6)
rest-basic-auth-expanders
expansion resource.
2.5.0 (2021-10-04)
Changed
- Updated expander dependency:
net.democritus:Expanders
:4.16.3 > 5.2.0
net.democritus:base-components
:2021.2.0 > 2021.3.1
net.democritus:nsx-default-stack
:2021.4.3 > 2021.9.4
net.democritus:querysearch-expanders
:2.5.0 > 2.6.0
- Creation of
QuerySearch
forincludeJaxrsConnector
option is now processed during model loading stage.
2.4.2 (2021-09-13)
Fixed
- The
ValidationError
class did not inject parameters into the message string when parameters are used.
2.4.0 (2021-08-26)
Fixed
- (REST-32)
SortFieldMapper
import was added toConnector
class when GETlist endpoint was not expanded, which prevents theSortFieldMapper
itself from expanding.
Changed
- Updated expander dependency:
net.democritus:Expanders
:4.13.5 > 4.16.3
net.democritus:base-components
:2021.0.1 > 2021.2.0
net.democritus:nsx-default-stack
:2021.1.1 > 2021.4.3
net.democritus:querysearch-expanders
:2.4.0 > 2.5.0
- Updated dependencies:
- Jersey:
2.30.1 > 2.34
- Changes:
2.31
: https://eclipse-ee4j.github.io/jersey.github.io/release-notes/2.31.html - Changes:
2.32
: https://eclipse-ee4j.github.io/jersey.github.io/release-notes/2.32.html - Changes:
2.33
: https://eclipse-ee4j.github.io/jersey.github.io/release-notes/2.33.html - Changes:
2.34
: https://eclipse-ee4j.github.io/jersey.github.io/release-notes/2.34.html
- Changes:
- Jackson:
2.10.3 > 2.12.2
- Changes
2.10.4
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.4 - Changes
2.10.5
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.5 - Changes
2.11
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11 - Changes
2.11.1
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.1 - Changes
2.11.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.2 - Changes
2.11.3
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.3 - Changes
2.11.4
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.4 - Changes
2.12
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12 - Changes
2.12.1
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.1 - Changes
2.12.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.12.2
- Changes
- Swagger:
1.6.1 > 1.6.2
- Jersey:
2.3.1 (2021-07-20)
Fixed
- Removed support for
SortParameters
from deprecatedRestFacade
class, which causes issues when a lot of custom code is used. This is a new feature not required for backwards compatibility.
2.3.0 (2021-06-02)
This version contains several breaking changes. Please refer to the migration guide in the documentation for more information about these changes and what code is affected.
Fixed
- Results from GETlist endpoint is now sorted by database identifier by default.
- Return the correct calculated page value in pagination parameters.
- (REST-25) Return the correct calculated page size in pagination parameters.
- (REST-23) Handle
byte[]
value fields correctly in REST API.
Added
- (REST-15) Support for
sortby
parameter on getList endpoint. - (REST-15) Added Component and DataElement options
jaxrs.endpoint.getList.sorting.disable
to disable support for sorting through the API.
Changed
- Merged changes from version
1.17.0
. - Updated expander dependency:
net.democritus:querysearch-expanders
:2.3.2 > 2.4.0
- (REST-21) All
ValidationError
constants in theValidationError
class are now markedfinal
. - (REST-27) Integrated
RestFacade
methods forPOST
,PUT
,PATCH
andDELETE
into theConnector
class. - (REST-28) Integrated
RestFacade
methods forGETresource
into theConnector
class. - (REST-29) Integrated
RestFacade
methods forGETlist
into theConnector
class. - (REST-29)
RestFacade.applyPagination()
moved to newPagination
class.
Removed
- Following the addition of pagination expander options, the
pagination
anchors inapplyPagination()
have been removed. - (REST-26)
RestFacade
class has been removed. The transientApplicationInstance
optionjaxrs.transient.generateFacade.enable
has been added to re-enable expansion of this class, along with all of its contents. However, all default endpoints will still use the new implementation.
2.2.0 (2021-05-06)
Added
convert-before
anchors inCustomCommandResult.from()
method.
Changed
- (REST-19) The QuerySearch instance used by the REST API is now marked with the option
jaxrs.querySearch
. - Updated expander dependency:
net.democritus:querysearch-expanders
:2.2.0 > 2.3.2
2.1.0 (2021-03-25)
Added
- (REST-14) New DataOption
jaxrs.endpoint.getList.defaultPage
to set the value ofDEFAULT_PAGE
in theRestFacade
class. - (REST-14) New DataOption
jaxrs.endpoint.getList.defaultPageSize
to set the value ofDEFAULT_PAGE_SIZE
in theRestFacade
class. - (REST-18) New DataOption
jaxrs.endpoint.getList.maxPageSize
to set a fixed maximum page size for GETlist requests.
Changed
- Updated expander dependency:
net.democritus:Expanders
:4.13.4 > 4.13.5
net.democritus:querysearch-expanders
:2.0.0 > 2.2.0
2.0.2 (2021-03-11)
Fixed
- (REST-13) Dynamic registration of QuerySearch object can cause concurrency exceptions.
2.0.0 (2021-03-08)
Changed
- Updated expander dependency:
net.democritus:nsx-default-stack
:2021.0.1 > 2021.1.1
net.democritus:Expanders
:4.13.2 > 4.13.4
net.democritus:querysearch-expanders
:1.9.0 > 2.0.0
- (REST-12) Populate QuerySearch model instead of
enableQuerySearch
option whenincludeJaxrsConnector
is present on a DataElement.
1.17.0 (2021-05-19)
Added
- Added feature anchors to
ElementConnectorExpander
:post-mapper
post-command
put-mapper
put-command
patch-mapper
patch-command
delete-command
1.16.0 (2021-02-17)
This version contains some breaking changes. Please refer to the migration guide in the documentation for more information about this change and what code is affected.
Added
- New
rest-jaxrs-stack
expansion resource bundle which contains therest-expanders
bundle,rest-basic-auth-expanders
and all their dependencies. - New
rest-account-security-expanders
bundle which ties the default generated endpoints in with the access control functionality of the account base component, which allows the definition of security rights at runtime in the DataAccess element. This is activated with the component optionjaxrs.account.accessControl.enable
.
Changed
- Updated expander dependency:
net.democritus:Expanders
:4.12.1 > 4.13.2
- Restructured expander project to support multiple expansion resource projects as
rest-expanders-stack
. - Moved the
rest-basic-auth-expanders
into the codebase of therest-expanders-stack
and matched the version to that of therest-expanders
. SecurityRight
class moved fromshared
tocontrol
.- Moved the definition of the
WWW-Authenticate
header to a separateAuthenticateResponseHeaderBuilder
class for cleaner feature injection.
1.15.0 (2021-02-01)
This version contains some breaking changes in several expanders that can be opted-out in the short-term by using the ApplicationInstanceOption jaxrs.transient.exposeDiagnostics.enable
. Please refer to the migration guide in the documentation for more information about this change and what code is affected.
Fixed
- Harvesting and expanding of ext files in the integration project did not work correctly.
Added
- Exceptions where diagnostics are available now have these written to the log when they occur on a REST call.
- Added
WWW-Authenticate
header to response inNotAuthorizedExceptionHandler
.
Changed
- Updated expander dependency:
net.democritus:Expanders
:4.4.12 > 4.12.1
- Replaced makeshift injection of the
CommandExtension
classes in the logicBean
with feature injection for commands which are now supported in the main expanders. The old code which was automatically injected into custom anchors is also automatically removed, given that it was not altered. - Improvements to expanders for exception handling interceptors.
- Errors on REST calls where diagnostics were made available in the error response no longer include the diagnostics. This can be re-enabled by using the transient option
jaxrs.transient.exposeDiagnostics.enable
. ValidationException
class moved fromshared
tocontrol
.
Removed
- The transient option
rest.compatibility.generateUuid
introduced in version1.4.0
was removed.
1.14.0 (2021-01-21)
Fixed
- Changed incorrect parameter nullable annotation for
RestErrorResponseBuilder.setError()
.
Added
- New
RestErrorResponseBuilder.addHeader()
method to add additional headers to error responses.
Changed
- Updated expander dependency:
net.democritus:querysearch-expanders
:1.8.0 > 1.9.0
1.13.0 (2021-01-07)
This version contains some breaking changes in several expanders that can be opted-out in the short-term by using the ApplicationInstanceOption jaxrs.transient.useQualifiedNames.disable
. Please refer to the migration guide in the documentation for more information about this change and what code is affected.
Fixed
- Corrected error message in
DeletionFailedInterceptor
.
Changed
- Updated expander dependency:
net.democritus:Expanders
:4.4.4 > 4.4.12
net.democritus:querysearch-expanders
:1.7.0 > 1.8.0
- Qualified some variable/method argument names to prevent obvious collisions with DataElement names. This is a breaking change that can be opted-out in the short-term by using the ApplicationInstanceOption
jaxrs.transient.useQualifiedNames.disable
.
1.12.0 (2020-10-05)
Added
- Added feature anchors to
ElementConnectorExpander
:getList-filter
get-filter
Changed
- Updated expander dependency:
net.democritus:querysearch-expanders
:1.5.0 > 1.7.0
- Updated dependencies in integration test project:
- NSX Runtime:
2019.7.1 > 2020.9.0
- NSX Runtime:
1.11.2 (2020-07-31)
Fixed
- Set the correct
oauth2RedirectUrl
in the Swagger UI page.
Added
- Added anchors to
SwaggerUiExpander
:before-setup
config
after-setup
1.11.1 (2020-07-29)
Fixed
- The result of the fillers in the command extensions should be propagated if it is an error.
1.11.0 (2020-07-01)
Changed
- Allow all
OPTIONS
calls to bypass authorization. CommonDataValidator
classes now return on empty input parameters.- Updated expander dependency:
net.democritus:querysearch-expanders
:1.4.0 > 1.5.0
1.10.0 (2020-06-02)
Added
- Support for proxies by processing the
Forwarded
,X-Forwarded-Host
andX-Forwarded-Proto
headers. BaseUrlContext.from(Context)
method to easily retrieve the context.BaseUrlContext.from(ParameterContext<?>)
method to easily retrieve the context.
Changed
- Replaced
BaseUrlContext.EMPTY
field withBaseUrlContext.empty()
method as the context is not immutable and the content of theEMPTY
could be overwritten. - Updated expander dependency:
net.democritus:querysearch-expanders
:1.3.2 > 1.4.0
1.9.2 (2020-05-15)
Fixed
- Swagger-JAXRS was overwriting part of the swagger definition.
Added
- Added
updateOperation(String, HttpMethod, Operation)
method to theSwaggerServlet
class.
1.9.0 (2020-05-15)
As of this version, anonymous access to the REST API is blocked by default. To restore the old behavior of allowing anonymous access, add the option jaxrs.auth.anonymous.enable
. Alternatively you can use the net.democritus:rest-basic-auth-expanders
bundle to provide basic authentication that uses the account component.
Added
- Added
jaxrs.auth.anonymous.enable
component option to allow anonymous access to the API. - Added parsing of the
Authorization
header toAuthenticationProvider
to provide a clean hook to implement one or more authentication methods.
Changed
- Anonymous access to the API is now blocked by default. An authentication implementation must be added or the method
jaxrs.auth.anonymous.enable
. - REST expanders are now built against expanders version
4.4.4
.
1.8.4 (2020-05-14)
- Corrected enable condition to generate the
DataElementOutputSchema.json
files.
1.8.0 (2020-05-13)
Fixed
- Reverted Jackson dependency in application
2.11.0 > 2.10.3
due to runtime compatibility issues with Jersey.
Added
- Added new
MalformedHeaderException
class, along with exception handler and error codeBR014
. - Added static
from(Context)
method to the user context class. - Added
update(UserContext)
method to the user context class to update its fields from another context. - Added
updateSecurityDefinitions(Map)
method to theSwaggerServlet
class. - Added
imports
,fields
andmethods
anchors to theSwaggerServlet
class.
Changed
- Replaced the ANONYMOUS and SYSTEM variables with static factory methods in the user context. This will prevent accidental caching of system access when modifying the user context.
1.7.0 (2020-05-13)
For any projects that might already use the integration test project, beware that you must move your harvest files due to the classes in the integration project moving locations.
Added
- Schema validation in the test project for GET calls to retrieve individual resources.
Changed
- Updated
anchor-removal-plugin
in the test project to version1.1
. - Moved all classes except for unit test classes into the main sources folder of the test project.
- Updated dependencies in application:
- Jackson:
2.10.3 > 2.11.0
- Changes
2.11.0
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11
- Changes
- JetBrains Annotations:
18.0.0 > 19.0.0
- Jackson:
1.6.0 (2020-05-11)
Fixed
- The uniqueness data validation did not handle
null
values correctly.
Changed
- REST expanders are now built against querysearch expanders version
1.3.2
.
1.5.2 (2020-05-06)
Fixed
- The
OutputListModel
class did not compile when the plural was the same as the singular in theexternalName
option.
1.5.1 (2020-05-05)
Fixed
- The code injected into the
QuerySearch
classes no longer uses the deprecatedwhen()
method.
1.5.0 (2020-05-02)
Fixed
- Increased priority for
JSONMappingException
andJSONParseException
handlers to prevent the default handlers from firing whenJacksonJsonProvider
is used for a REST client. - Incorrect import in the REST integration testing project.
- If no command is defined for an endpoint, there should be no validators generated for fields that have the
exposeRestField
option.
Added
- Support for expansion resource dependencies.
net.democritus:Expanders
andnet.democritus:querysearch-expanders
are now listed as dependencies.
Changed
- REST expanders are now built against expanders version
4.3.10
. - REST expanders are now built against querysearch expanders version
1.3.1
.
1.4.0 (2020-04-22)
This version breaks backwards compatibility for UUID fields. Use the option ApplicationInstance option rest.compatibility.generateUuid
to re-enable this behavior or add the option generateUuid
to all fields with the name uuid
.
Added
- Added ApplicationInstance option
rest.compatibility.generateUuid
to replicate the old behavior of the REST expanders to generate a UUID for all fields with the nameuuid
. - Added support for Hibernate as persistence provider.
Changed
- Updated dependencies:
- Jersey:
2.29.1 > 2.30.1
- Jackson:
2.10.0 > 2.10.3
- Changes
2.10.1
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.1 - Changes
2.10.2
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.2 - Changes
2.10.3
: https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.3
- Changes
- Swagger:
1.5.24 > 1.6.1
- Jersey:
1.3.0 (2020-04-03)
Fixed
- The Apache Commons Lang 3 dependency was missing in the control layer for the validation system.
Added
- (EXPERIMENTAL) Expanding integration tests for REST.
1.2.3 (2020-03-23)
Fixed
- The
Location
header was not correctly generated in thePOST
endpoint when the resource identifier is given inincludeJaxrsConnector
.
1.2.2 (2020-03-06)
Fixed
- URL validation method was not generated in the ValidationBean for customized endpoints.
Changed
- Removed regular expression description in ValidationError class.
1.2.1 (2020-03-05)
Fixed
- The CORS implementation generated an unintended exception on pre-flight requests and also did not send the
Allow
header on pre-flight requests.
Added
- Added a provider to handle
OPTIONS
calls to the REST API when the request is not a CORS request. Before this was handled by JAX-RS internally.
1.2.0 (2020-02-26)
Fixed
- Empty string was injected into the QuerySearch for a DataElement if no valid
functionalKey
was defined for a REST connector. - Excludes of swagger files were handled incorrectly in the AuthorizationProvider.
Changed
- Split off the builder classes for the
CreatedResponse
andRestErrorResponse
into separate files. - Added expander comment to all expanders.
- Updated CORS filter:
Access-Control-Allow-Methods
now contains only the methods available at the addressed endpoint.Access-Control-Allow-Headers
is now returned for CORS requests, containing the allowed headers that were requested inAccess-Control-Request-Headers
.
- The implementation of the validation pipeline was moved to a new
ValidationBean
in the logic layer, to allow the use of feature anchors.
1.1.2 (2020-02-17)
Fixed
- Updated enable conditions for data validator classes to check for
includeJaxrsConnector
.
Changed
- Support added for
if_empty
value ingenerateUuid
option, allowing users to pass a uuid in POST. It will only be generated if no uuid was given.
1.1.1 (2020-02-13)
Fixed
- The enable condition for the DataElementReferenceModel and DataElementReferenceMapper classes was too restrictive. Now generates even when there is no
GET
endpoint.
Changed
- Provided a new implementation to format validation error messages. The previous implementation relied on
commons-lang3
, which due to the Struts upgrade in the3.2.0
version of the main expander bundle is causing conflicts with TomEE 7. The depedency oncommons-lang3
has been removed.
1.1.0 (2020-02-12)
Requires (at least) version 4.2.0
of the main expander bundle.
Fixed
- The swagger annotation for the 201 Created response on POST endpoints referenced the wrong response model class.
- The name for validation result variables of link fields in the data validators was incorrect.
- Generation of input validators failed when no command was found for the endpoint.
Changed
- The option
generateUuid
available in the main expanders starting at version4.1.2
is now supported instead of the fielduuid: String
to automatically generate a UUID (and related functionality in REST). To preserve backwards compatibility, the option will implicitly be added to fields with signatureuuid: String
by this expander bundle.
Removed
- EditorConfig file expander has been moved into the main expander bundle. Available starting at version
4.1.2
. gen_test
folders are now generated by the main expander building. Available starting at version4.1.2
.
0.12.0 (2022-10-26)
Changed
- Updated to latest expansion infrastructure:
prime-core:2022.10.3
(instead of nsx-prime/elements-ioxml)Expanders:5.14.2
0.11.0 (2020-08-10)
Changed
- [1.x backport] Expander bundle now requires Java 8. (Expanded code is still Java 7 compatible.)
- [1.x backport] Support for expander dependency system.
- [1.x backport] Removed EditorConfig expanders as these are now integrated into
net.democritus:Expanders
. - [1.x backport] Removed UUID generation support, now implicitly adding
generateUuid
option to fields with signatureuuid: String
.