code: @RequestMapping(value = "/reporting/f/{layerId}/{reportName}.{format}", method = RequestMethod.GET)
  	public String reportFeatures(@PathVariable String reportName, @PathVariable String format,
  			@PathVariable String layerId, @RequestParam(defaultValue = "EPSG:4326", required = false) String crs,
  			@RequestParam(required = false) String filter, HttpServletRequest request, Model model) {
  		List<InternalFeature> features;
  		try {
  			Filter filterObject = null;
  			if (null != filter) {
  				filterObject = filterService.parseFilter(filter);
  			}
  			features = vectorLayerService.getFeatures(layerId, geoService.getCrs2(crs), filterObject, null,
  					VectorLayerService.FEATURE_INCLUDE_ALL);
  			model.addAttribute(DATA_SOURCE, new InternalFeatureDataSource(features));
  			addParameters(model, request);
  		} catch (GeomajasException ge) {
  			log.error(REPORT_DATA_PROBLEM, ge);
  			model.addAttribute(DATA_SOURCE, new InternalFeatureDataSource(new ArrayList<InternalFeature>()));
  		}
  		model.addAttribute(JasperReportsMultiFormatView.DEFAULT_FORMAT_KEY, format);
  		return getView(reportName);
  	}
docs: Report on the features of a layer.
  
  @param reportName name of the report
  @param format format for the report (eg "pdf")
  @param layerId id of the layer
  @param crs coordinate reference system
  @param filter filter to apply on layer
  @param request request object for report parameters
  @param model mvc model
  @return name of the view