code: @Override
  	protected List getNewSelections(final Request request) {
  		List selections = super.getNewSelections(request);
  
  		if (selections != null) {
  			// Ensure that there are no duplicates
  			for (int i = 0; i < selections.size(); i++) {
  				Object selection = selections.get(i);
  
  				for (int j = i + 1; j < selections.size(); j++) {
  					if (Util.equals(selection, selections.get(j))) {
  						selections.remove(j--);
  					}
  				}
  			}
  		}
  
  		return selections;
  	}
docs: Override getNewSelections to ensure that the max number of inputs is honoured and that there are no duplicates.
  This should not normally occur, as the client side js should prevent it.
  
  @param request the current request
  @return a list of selections that have been added in the given request.