code: protected String serializeArgumentToRequestPart(Object pArg) {
          if (pArg != null) {
              if (pArg.getClass().isArray()) {
                  return getArrayForArgument((Object[]) pArg);
              } else if (List.class.isAssignableFrom(pArg.getClass())) {
                  List list = (List) pArg;
                  Object[] args = new Object[list.size()];
                  int i = 0;
                  for (Object e : list) {
                      args[i++] = e;
                  }
                  return getArrayForArgument(args);
              }
          }
          return nullEscape(pArg);
      }
docs: Serialize an object to a string which can be uses as URL part in a GET request
  when object should be transmitted <em>to</em> the agent. The serialization is
  rather limited: If it is an array, the array's member's string representation are used
  in a comma separated list (without escaping so far, so the strings must not contain any
  commas themselves). If it is not an array, the string representation ist used (<code>Object.toString()</code>)
  Any <code>null</code> value is transformed in the special marker <code>[null]</code> which on the
  agent side is converted back into a <code>null</code>.
  <p>
  You should consider POST requests when you need a more sophisticated JSON serialization.
  </p>
  @param pArg the argument to serialize for an GET request
  @return the string representation