code: public String getNewSigName() {
          AcroFields af = writer.getAcroFields();
          String name = "Signature";
          int step = 0;
          boolean found = false;
          while (!found) {
              ++step;
              String n1 = name + step;
              if (af.getFieldItem(n1) != null) {
                  continue;
              }
              n1 += ".";
              found = true;
              for (Iterator it = af.getFields().keySet().iterator(); it.hasNext();) {
                  String fn = (String)it.next();
                  if (fn.startsWith(n1)) {
                      found = false;
                      break;
                  }
              }
          }
          name += step;
          return name;
      }
docs: Gets a new signature fied name that doesn't clash with any existing name.
  @return a new signature fied name