Version 0.17
Potentially breaking |
belgif-rest-problem:
-
Normalize
*Id
and*Code
input names in 404 Resource Not Found detail message toid
andcode
to account for updated [id-name] rule -
Renamed
io.github.belgif.rest.problem.i18n
property 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
.
-
-
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.
-
Use these extensions at your own discretion. They are not an official part of the Belgif REST guidelines, may have an impact on interoperability, and may potentially be changed or removed in a future version. |
Version 0.16
belgif-rest-problem:
-
Use English by default for I18N messages instead of fallback to system locale
Version 0.15
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
Version 0.14
belgif-rest-problem:
-
Map Jackson MismatchedInputException (for missing required properties on request body) to BadRequestProblem
Version 0.13
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
Version 0.12
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
-
Replace
urn:problem-type:cbss:input-validation:referencedResourceNotFound
by 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
Version 0.11
belgif-rest-problem:
-
Add in(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
Version 0.10
belgif-rest-problem:
-
Remove @ApplicationException annotation on Problem, because it could potentially cause compilation errors when used in combination with annotation processors
-
Disallow creation of InputValidationIssue with inputs[] of size 1
Potentially breaking:
-
removed
InputValidationIssue.setInputs(List<Input<?>> inputs)
-
removed
InputValidationIssue.setInputs(Input<?>… inputs)
-
removed
InputValidationIssue.input(Input<?> input)
-
belgif-rest-problem-java-ee:
-
Add EJBExceptionMapper that unwraps Problem cause, to address the removed @ApplicationException annotation
belgif-rest-problem-spring:
-
Added support for InvalidRequestException thrown by the Atlassian swagger-request-validator
Version 0.9
belgif-rest-problem-bom:
-
Added Maven BOM (Bill of Materials) for dependency versions of belgif-rest-problem modules
belgif-rest-problem:
-
Add WWW-Authenticate HTTP response header to token-related problem types
belgif-rest-problem-java-ee:
-
Ensure ProblemClientResponseFilter gets registered for JAX-RS clients
Version 0.8
belgif-rest-problem-spring:
-
Map HttpRequestMethodNotSupportedException to HTTP 405 "Method Not Allowed" + Allow HTTP header
-
Map HttpMediaTypeNotAcceptableException to HTTP 406 "Not Acceptable"
-
Map HttpMediaTypeNotSupportedException to HTTP 415 "Unsupported Media Type"
-
Sanitize BadRequestProblem detail message for HttpMessageNotReadableException
Version 0.7
belgif-rest-problem-validator:
-
Make RequestValidator extensible by introducing AbstractRequestValidator base class
belgif-rest-problem-spring:
-
Extract ProblemWebClientCustomizer to belgif-rest-problem-spring-boot-2 and belgif-rest-problem-spring-boot-3 to fix NoSuchMethodError compatibility issue
-
Add AnnotationParameterNameDiscoverer to retrieve parameter names from Spring MVC annotations for bean validation
belgif-rest-problem-java-ee:
-
Add JaxRsParameterNameProvider to retrieve parameter names from JAX-RS annotations for bean validation
Version 0.6
belgif-rest-problem-validator:
-
Fix validation for "overflow" SSINs
belgif-rest-problem-spring:
-
Make RestControllerAdvice components @ConditionalOnWebApplication
Version 0.5
belgif-rest-problem-spring:
Split into belgif-rest-problem-spring-boot-2 and belgif-rest-problem-spring-boot-3. To benefit from Spring Boot 2.x or 3.x specific features, replace dependencies to belgif-rest-problem-spring by the version-specific variant.
belgif-rest-problem-spring-boot-3:
-
Map NoResourceFoundException to 404
urn:problem-type:belgif:resourceNotFound
-
Added support for RestClient API
Version 0.4
belgif-rest-problem:
-
Removed deprecated InvalidParamProblem: use InputValidationProblem, which supports both the legacy invalidParams[] and the new issues[] structure
-
Replace specific
urn:problem-type:cbss:input-validation:unknownSsin
issue type by genericurn:problem-type:cbss:input-validation:referencedResourceNotFound
-
Added optional replacedByHref property to replacedSsin issue type
belgif-rest-problem-validator:
-
Added requireIfPresent check for validating input(s) that must be present when a given target input is present
Version 0.3
belgif-rest-problem:
-
Removed deprecated "status" and "instance" properties from InputValidationIssue
belgif-rest-problem-spring:
-
Added support for bean validation
-
Added Jakarta EE 9/10 support: use
<classifier>jakarta</classifier>
Version 0.2
belgif-rest-problem:
-
Extracted RequestValidator to separate belgif-rest-problem-validator module.
-
Added equals() and hashCode() to all Problem classes
-
Move additionalProperties from DefaultProblem to Problem
belgif-rest-problem-java-ee:
-
Added Jakarta EE 9/10 support: use
<classifier>jakarta</classifier>
belgif-rest-problem-spring:
-
Remove
be.fgov.kszbcss
from default scanned problem type packages -
Rename
io.github.belgif.rest.problem.spring.scan-additional-problem-packages
configuration property toio.github.belgif.rest.problem.scan-additional-problem-packages
documentation:
-
Add chapter on Code generators.