code: public static String getRequestBody(HttpServletRequest request) {
  		if(request.getMethod().equals("GET") || request.getMethod().equals("DELETE")) {
  			return null;
  		}
  		
  		StringBuilder stringBuilder = new StringBuilder();
  		BufferedReader bufferedReader = null;
  		try {
  			InputStream inputStream = request.getInputStream();
  			if (inputStream != null) {
  				bufferedReader = new BufferedReader(new InputStreamReader(
  						inputStream));
  				char[] charBuffer = new char[128];
  				int bytesRead = -1;
  				while ((bytesRead = bufferedReader.read(charBuffer)) > 0) {
  					stringBuilder.append(charBuffer, 0, bytesRead);
  				}
  			} else {
  				stringBuilder.append("");
  			}
  		} catch (IOException ex) {
  			// to nothing
  		} finally {
  			if (bufferedReader != null) {
  				try {
  					bufferedReader.close();
  				} catch (IOException ex) {
  
  				}
  			}
  		}
  
  		if (!StringUtils.isEmpty(stringBuilder)) {
  			return stringBuilder.toString();
  		}
  
  		if (request.getParameterMap().keySet().size() > 0) {
  			return request.getParameterMap().keySet().toArray()[0].toString();
  		}
  
          return null;
  	}
docs: not easily tested