externalForm.addParameter(TEXTINPUT_KEY_PREVIOUS_VALUE, text);
externalForm.addParameter(getTextInputUniqueKeyPreviousValue(id, shortKeyPath), text);
  public PresentationObject getPresentationObject(    Object entity,    EntityPath path,    EntityBrowser browser,    IWContext iwc) {    Object value = getValue(entity, path, browser, iwc);    String text = value.toString();        Integer id = (Integer) ((EntityRepresentation) entity).getPrimaryKey();    // show text input without a submit button if the entity is new     boolean newEntity = id.intValue() < 0;    String shortKeyPath = path.getShortKey();    String uniqueKeyLink = getLinkUniqueKey(id, shortKeyPath);    // decide to show a link or a text inputfield    if (newEntity || iwc.isParameterSet(uniqueKeyLink)) {      // show text input with submitButton      String uniqueKeyTextInput = getTextInputUniqueKey(id, shortKeyPath);      TextInput textInput = new TextInput( uniqueKeyTextInput, text);      // add old value as hidden value      externalForm.addParameter(TEXTINPUT_KEY_PREVIOUS_VALUE, text);        Table table = (newEntity) ? new Table(1,1) : new Table(2,1);      table.add(textInput,1,1);      if (! newEntity) {        SubmitButton button = new SubmitButton("OK", getGeneralSubmitKey(), getUniqueKey(id, shortKeyPath).toString());        button.setAsImageButton(true);        table.add(button,2,1);      }      return table;          }     else {      // show link      text = (text.length() == 0) ? "_" : text;        Link link = new Link(text);      link.addParameter(uniqueKeyLink,"dummy_value");      // add maintain parameters      Iterator iteratorList = maintainParameterList.iterator();      while (iteratorList.hasNext())  {        String parameter = (String) iteratorList.next();        link.maintainParameter(parameter, iwc);      }      return link;    }        }