Interface RequestValidator


public interface RequestValidator
The RequestValidator requires the parameters in a specific format to be able to parse and validate them. This is especially true for exploded parameters. The following table shows how the value of a parameter of a request must be stored in a ValidatableRequest object. For these examples the key of those values is always color.

These are the initial values for each type:
  • primitive (string) -> "blue"
  • array -> ["blue","black","brown"]
  • object -> { "R": 100, "G": 200, "B": 150 }
For cookie parameters ValidatedRequest.getCookies()
+--------+---------+-------+-----------+------------------------------------+-------------------------+
| style  | explode | empty | primitive | array                              | object                  |
+--------+---------+-------+-----------+------------------------------------+-------------------------+
| form   | false   |       | blue      | blue,black,brown                   | R,100,G,200,B,150       |
+--------+---------+-------+-----------+------------------------------------+-------------------------+
| form   | true    |       | blue      | color=blueinvalid input: '&color'=blackinvalid input: '&color'=brown | R=100invalid input: '&G'=200invalid input: '&B'=150       |
+--------+---------+-------+-----------+------------------------------------+-------------------------+
For header parameters ValidatedRequest.getHeaders()
+--------+---------+-------+-----------+------------------------------------+-------------------------+
| style  | explode | empty | primitive | array                              | object                  |
+--------+---------+-------+-----------+------------------------------------+-------------------------+
| simple | false   |       | blue      | blue,black,brown                   | R,100,G,200,B,150       |
+--------+---------+-------+-----------+------------------------------------+-------------------------+
| simple | true    |       | blue      | blue,black,brown                   | R=100,G=200,B=150       |
+--------+---------+-------+-----------+------------------------------------+-------------------------+
For path parameters ValidatedRequest.getPathParameters()
+--------+---------+--------+-------------+-------------------------------------+--------------------------+
| style  | explode | empty  | primitive   | array                               | object                   |
+--------+---------+--------+-------------+-------------------------------------+--------------------------+
| simple | false   |        | blue        | blue,black,brown                    | R,100,G,200,B,150        |
+--------+---------+--------+-------------+-------------------------------------+--------------------------+
| simple | true    |        | blue        | blue,black,brown                    | R=100,G=200,B=150        |
+--------+---------+--------+------ ------+-------------------------------------+--------------------------+
| label  | false   | .      | .blue       | .blue,black,brown                   | .R,100,G,200,B,150       |
+--------+---------+--------+-------------+-------------------------------------+--------------------------+
| label  | true    | .      | .blue       | .blue.black.brown                   | .R=100.G=200.B=150       |
+--------+---------+--------+-------------+-------------------------------------+--------------------------+
| matrix | false   | ;color | ;color=blue | ;color=blue,black,brown             | ;color=R,100,G,200,B,150 |
+--------+---------+-------+--------+-------------------------------------------+--------------------------+
| matrix | true    | ;color | ;color=blue | ;color=blue;color=black;color=brown | ;R=100;G=200;B=150       |
+--------+---------+--------+-------------+-------------------------------------+--------------------------+
For query parameters ValidatedRequest.getQuery()
+----------------+---------+-------+------------+-----------------------------------+--------------------------+
| style          | explode | empty | primitive | array                              | object                   |
+----------------+---------+-------+----------+-------------------------------------+--------------------------+
| form           | false   |       | blue      | blue,black,brown                   | R,100,G,200,B,150        |
+----------------+---------+-------+-----------+------------------------------------+--------------------------+
| form           | true    |       | blue      | color=blueinvalid input: '&color'=blackinvalid input: '&color'=brown | R=100invalid input: '&G'=200invalid input: '&B'=150        |
+----------------+---------+-------+------ ----+------------------------------------+--------------------------+
| spaceDelimited | false   | not yet supported                                                                 /
+----------------+---------+-------+------ ----+------------------------------------+--------------------------+
| spaceDelimited | true    | not yet supported                                                                 /
+----------------+---------+-------+------ ----+------------------------------------+--------------------------+
| pipeDelimited  | false   | not yet supported                                                                 /
+----------------+---------+-------+------ ----+------------------------------------+--------------------------+
| pipeDelimited  | true    | not yet supported                                                                 /
+----------------+---------+-------+------ ----+------------------------------------+--------------------------+
| spaceDelimited | true    | not yet supported                                                                 /
+----------------+---------+-------+------ ----+------------------------------------+--------------------------+