code: @SuppressWarnings("unchecked")
      @Override
  	public Object convertToObject(OpenType openType, Object pValue) {
          if (pValue == null) {
              return null;
          } else {
              for (OpenTypeConverter converter : converters) {
                  if (converter.canConvert(openType)) {
                      return converter.convertToObject(openType,pValue);
                  }
              }
              throw new IllegalArgumentException(
                      "Cannot convert " + pValue + " to " + openType + ": " + "No converter could be found");
          }
  	}
docs: Handle conversion for OpenTypes. The value is expected to be in JSON (either
  an {@link org.json.simple.JSONAware} object or its string representation.
  
  @param openType target type
  @param pValue value to convert from
  @return the converted value