readonly property in request body not validating

Issue #390 new
Andreas Petersen created an issue

I am not getting validation error when posting a readonly property in the request body.

swagger-request-validator-core version 2.28.2.

Validator configuration:

String openApiUrl = URI.create(...).toString();
ParseOptions parseOptions = new ParseOptions();
parseOptions.setResolve(true);
parseOptions.setResolveFully(false); // Makes not difference true or false
parseOptions.setResolveCombinators(true); // Makes not difference true or false

OpenApiInteractionValidator validator = OpenApiInteractionValidator
        .createForSpecificationUrl(openApiUrl)
        .withParseOptions(parseOptions)
        .build();

OpenAPI:

---
openapi: 3.0.3
info:
  title: readonly-not-validating
  version: v1
paths:
  /:
    post:
      summary: Create a new item.
      operationId: postItem
      requestBody:
        description: Create new item.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Item'
        required: true
      responses:
        "201":
          description: Item created.
components:
  schemas:
    Item:
      required:
        - description
      type: object
      properties:
        id:
          description: An ID.
          type: string
          readOnly: true
        description:
          description: Some description.
          type: string

Request body:

{
    "id": "readonly-id",
    "description": "required description"
}

Comments (1)

  1. Log in to comment