Releases: belgif/rest-problem-java
Releases · belgif/rest-problem-java
Release v0.20.0
Changes
belgif-rest-problem
- Disable stacktrace on Problem exception class by default, as performance optimization. You can configure
io.github.belgif.rest.problem.stack-trace-enabled= true to opt out of this. - Add name with JSON location to schemaViolation issue for JSON syntax error
belgif-rest-problem-spring-boot-4
- Fix conditional loading of optional components
Release v0.19.1
Changes
belgif-rest-problem
- Added support for Jackson 3:
- ProblemTypeRegistry now returns
Map<String, Class<?>>instead ofNamedType[]to decouple from Jackson version - Added
io.github.belgif.rest.problem.ProblemModuleJackson3 - Ignore read-only properties "type", "status" and "title" in setAdditionalProperty()
- ProblemTypeRegistry now returns
belgif-rest-problem-validator
- Stop relying on openapi schema validation: implement all validation aspects, including those already specified by the schema
belgif-rest-problem-java-ee
- Added
AbstractInputParamConverterProviderbase class for implementing input-aware ("in" and "name") JAX-RS ParamConverters - Unwrap BadRequestProblem exception cause thrown by JAX-RS ParamConverters
- Added exception mapper for converting Jackson JsonMappingException and JsonParseException to BadRequestProblem with schemaViolation issue type
belgif-rest-problem-spring
- Renamed to belgif-rest-problem-spring-boot-common
belgif-rest-problem-spring-boot-2
- Removed module
belgif-rest-problem-spring-boot-4
- Added new module for Spring Boot 4 and Jackson 3
Release v0.18.0
Changes
belgif-rest-problem
- Add href property with documentation URL for belgif (e.g. https://www.belgif.be/specification/rest/api-guide/issues/schemaViolation.html) and belgif-ext (e.g. https://www.belgif.be/specification/rest/api-guide/issues/ext/invalidStructure.html) issue types
- Add Input parameter alternatives in InputValidationIssues for invalidSsin, unknownSsin, canceledSsin and replacedSsin
belgif-rest-problem-validator
- Add validator for Belgif openapi-employment-identifier EmployerId
belgif-rest-problem-java-ee
- Correctly determine input source for bean validation issues from properties in @BeanParam class
- Improve bean validation support for @FormParam, @MatrixParam and @CookieParam
belgif-rest-problem-spring
- Improve bean validation support for @MatrixVariable and @CookieValue
Release v0.17.0
Changes
belgif-rest-problem-java
- Normalize
*Idand*Codeinput names in 404 Resource Not Found detail message to id and code to account for updated [id-name] rule ⚠️ Renamedio.github.belgif.rest.problem.i18nproperty toio.github.belgif.rest.problem.i18n-enabled⚠️ By default, replace specialized input validation issue types invalidStructure, invalidPeriod, outOfRange, rejectedInput, requiredInput and cross-parameter validation issue types by new general issue typeurn:problem-type:belgif:input-validation:invalidInput.- io.github.belgif.rest.problem.ext.issue-types-enabled can be configured to keep using more specific issue types (from
urn:problem-type:belgif-ext:input-validation:*) instead ofurn:problem-type:belgif:input-validation:invalidInput.
- io.github.belgif.rest.problem.ext.issue-types-enabled can be configured to keep using more specific issue types (from
⚠️ By default, don’t populate inputs[] array for issue types that relate to multiple inputs.- io.github.belgif.rest.problem.ext.inputs-array-enabled can be configured to keep populating the inputs[] array.
Release v0.16.1
Changes
belgif-rest-problem
- Use English by default for I18N messages instead of fallback to system locale
Release v0.15.0
Changes
belgif-rest-problem
- Align MismatchedInputException detail message with Bean Validation
- Fix input path for MismatchedInputException on array properties
belgif-rest-problem-quarkus
- Add experimental support for Quarkus in native mode
Release v0.14.0
Changes
belgif-rest-problem
- Map Jackson MismatchedInputException (for missing required properties on request body) to BadRequestProblem
Release v0.13.0
Changes
belgif-rest-problem-spring
- Extract ProblemResponseErrorHandler and ProblemRestTemplateCustomizer to belgif-rest-problem-spring-boot-2 and belgif-rest-problem-spring-boot-3 to fix NoSuchMethodError compatibility issue
Release v0.12.0
Changes
belgif-rest-problem
- Add internationalization support for localized detail messages based on Accept-Language HTTP request header
- Don’t include null (issue) input values when serializing
⚠️ Replaceurn:problem-type:cbss:input-validation:referencedResourceNotFoundby standardizedurn:problem-type:belgif:input-validation:referencedResourceNotFound- Add fluent setter methods:
- Problem: detail, href, instance, additionalProperties
- InputValidationProblem: issues
- RetryAfterProblem: retryAfter, retryAfterSec
- Improve WWW-Authenticate header for token-related problem types:
- Support setting the "realm" attribute
- Add "error_description" and "scope" attributes for missing_scope
belgif-rest-problem-spring:
- Fix compatibility issue with Spring Boot 3.4
belgif-rest-problem-quarkus:
- New module for Quarkus support (only in JVM mode)
belgif-rest-problem-bom:
- Added jakarta classifier artifacts
Release v0.11.0
Changes
belgif-rest-problem
- Add
in(Input<?> input)to InputValidationIssue for a fluent single input setter
belgif-rest-problem-spring
- Fix non-deterministic configuration for retrieving parameter names from Spring MVC annotations