Query Parameters

It is possible to get any query parameters contained in a URL, for example ?name1=value1&name2=value2.

Use the getQueryParameters() method of a Location instance to access query parameters. You can obtain the Location instance through the BeforeEnterEvent parameter of the BeforeEnterObserver::beforeEnter or the BeforeEvent parameter of the HasUrlParameter::setParameter method.

Note
A Location object represents a relative URL made up of path segments and query parameters, without the hostname, that is new Location (“book/search?keyword=Vaadin”).

Example: Retrieving query parameters from a BeforeEvent.

Java

  1. @Override
  2. public void setParameter(BeforeEvent event,
  3. @OptionalParameter String parameter) {
  4. Location location = event.getLocation();
  5. QueryParameters queryParameters = location.getQueryParameters();
  6. Map<String, List<String>> parametersMap = queryParameters
  7. .getParameters();
  8. }
Note
getQueryParameters() supports multiple values associated with the same key, for example https://example.com/?genre=fiction&restrictions=16+&genre=classic will result in the corresponding map {“genre” : [“fiction”, “classic”], “restrictions”: [“16+”]}}.