Annotation Interface FormParam
Binds the value of a form parameter to a Web route method parameter whose name indicates the name of the parameter.
The annotated parameter can be of any type as long as it can be decoded by a parameter converter.
When specifying a Web server route, a form parameter can be defined as optional when the method parameter is an Optional
, it is otherwise considered as required and a
MissingRequiredParameterException
will be thrown if the route is invoked with the parameter missing.
If a request is received containing multiple form parameters with the same name, the first one is bound unless the method parameter is an array, a Collection
, a
List
or a Set
in which case all values are bound. A parameter converter may also split raw values around a value separator (eg. value 1,2,3,4
can be
bound to a list of integers).
@WebRoute( ... )
void handler(@FormParam int requiredParameter)
@WebRoute( ... )
void handler(@FormParam Optional<Integer> optionalParameter)
@WebRoute( ... )
void handler(@FormParam List<Integer> multiValueParameter)
This annotation can't be used in conjunction with @Body
.
- Since:
- 1.0
- Author:
- Jeremy Kuhn
- See Also:
-
Optional Element Summary
-
Element Details
-
name
String nameThe form parameter name.
This allows to override the name which is otherwise the Web route method parameter name, typically when the actual parameter name is not a valid Java identifier.
- Returns:
- a parameter name
- Default:
""
-