@Override
  public void addAnswerClicked() {
    answerProxy.setAnswerText(answerDialogbox.getRichtTextHTML());
    answerDriver
        .flush()
        .fire(
            new Receiver<Void>() {

              @Override
              public void onSuccess(Void response) {
                Log.info("fullSaved");

                initAnswerView();
                answerDialogbox.close();
                //	goTo(new PlaceAssesment(person.stableId()));
              }

              public void onFailure(ServerFailure error) {
                ErrorPanel erorPanel = new ErrorPanel();
                erorPanel.setErrorMessage(error.getMessage());
                Log.error(error.getMessage());
              }

              @Override
              public void onViolation(Set<Violation> errors) {
                Iterator<Violation> iter = errors.iterator();
                String message = "";
                while (iter.hasNext()) {
                  message += iter.next().getMessage() + "<br>";
                }
                Log.warn(
                    McAppConstant.ERROR_WHILE_DELETE_VIOLATION
                        + " in Antworten auflisten -"
                        + message);

                ErrorPanel erorPanel = new ErrorPanel();
                erorPanel.setErrorMessage(message);
              }
            });
  }
  @Override
  public void addNewAnswerClicked() {

    answerDialogbox = new AnswerDialogboxImpl();
    answerDialogbox.setDelegate(this);
    answerDriver = answerDialogbox.createEditorDriver();

    AnswerRequest request = requests.answerRequest();

    this.answerProxy = request.create(AnswerProxy.class);

    request.persist().using(answerProxy);
    answerProxy.setQuestion(question);
    answerProxy.setDateAdded(new Date());
    answerProxy.setAutor(loggedUser);
    if (loggedUser.getIsAdmin()) {
      answerProxy.setIsAnswerAcceptedAdmin(true);
      answerProxy.setIsAnswerAcceptedAutor(false);
      answerProxy.setRewiewer(question.getAutor());
    } else {
      answerProxy.setIsAnswerAcceptedAdmin(false);
      answerProxy.setIsAnswerAcceptedAutor(true);
    }

    answerProxy.setIsAnswerAcceptedReviewWahrer(false);
    answerDialogbox.setRichPanelHTML(answerProxy.getAnswerText());

    answerProxy.setIsAnswerActive(false);
    answerDriver.edit(answerProxy, request);

    answerDriver.flush();

    answerDialogbox.setValidityPickerValues(Arrays.asList(Validity.values()));
    answerDialogbox.setRewiewerPickerValues(Collections.<PersonProxy>emptyList());
    requests
        .personRequest()
        .findPersonEntries(0, 50)
        .with(medizin.client.managed.ui.PersonProxyRenderer.instance().getPaths())
        .fire(
            new Receiver<List<PersonProxy>>() {

              public void onSuccess(List<PersonProxy> response) {
                List<PersonProxy> values = new ArrayList<PersonProxy>();
                values.add(null);
                values.addAll(response);
                answerDialogbox.setRewiewerPickerValues(values);
              }
            });
    //	        answerDialogbox.setAutorPickerValues(Collections.<PersonProxy>emptyList());
    //	        requests.personRequest().findPersonEntries(0,
    // 50).with(medizin.client.managed.ui.PersonProxyRenderer.instance().getPaths()).fire(new
    // Receiver<List<PersonProxy>>() {
    //
    //	            public void onSuccess(List<PersonProxy> response) {
    //	                List<PersonProxy> values = new ArrayList<PersonProxy>();
    //	                values.add(null);
    //	                values.addAll(response);
    //	                answerDialogbox.setAutorPickerValues(values);
    //	            }
    //	        });

    answerDialogbox.display();
  }