This repository has been archived by the owner on Feb 12, 2022. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We have noticed that there is a bug in current raml-java-parser:
In case the resource action has the schema specified right under the body, without specifying the media type (so the dedfault media type applies), and at the same type a resource type is applied to the whole resource, where media-type specific schemas are defined, the schemas are merged in such a way that the RAML becomes invalid, and it is not possible to be parsed. The parsing fails with an exception.
For example:
will be merged into:
which is invalid.
Please check the src/test/resources/org/raml/media-type.yaml file below for this error case, I added a test for that, and a possible solution.
It should be however reviewed whether the order of schemas being applied is correct, ie which schema should have precedence over which, in case the schema specified on the resource is different from the schema defined in the resource type. Same applies to 'example' and 'formParameters'. You can see in the test which order is applied currently.