Program: 189175
Project: 189175
Buggy source:
public IssueForm(String id,final Issue issue,boolean creating,final HeadsUpPage owner,EditIssueForm parent){
  super(id);
  this.issue=issue;
  this.owner=owner;
  this.parent=parent;
  this.creating=creating;
  this.oldAssignee=issue.getAssignee();
  if (issue.getTimeRequired() != null) {
    this.oldTimeRequired=new Duration(issue.getTimeRequired());
  }
  setModel(new CompoundPropertyModel<Issue>(issue));
  add(new Label("String_Node_Str",issue.getProject().getAlias()));
  add(new IssueTypeDropDownChoice("String_Node_Str",IssueUtils.getTypes()));
  add(new DropDownChoice<Integer>("String_Node_Str",IssueUtils.getPriorities()){
    public boolean isNullValid(){
      return false;
    }
  }
.setChoiceRenderer(new IChoiceRenderer<Integer>(){
    public Object getDisplayValue(    Integer i){
      return IssueUtils.getPriorityName(i);
    }
    public String getIdValue(    Integer o,    int i){
      return o.toString();
    }
  }
));
  add(new TextField("String_Node_Str"));
  add(new MilestoneDropDownChoice("String_Node_Str",issue.getProject(),issue.getMilestone()).setNullValid(true));
  Label status=new Label("String_Node_Str",new Model<String>(){
    @Override public String getObject(){
      return IssueUtils.getStatusName(issue.getStatus());
    }
  }
);
  add(status);
  add(new Label("String_Node_Str",issue.getReporter().getFullnameOrUsername()));
  final DropDownChoice<User> assignees=new UserDropDownChoice("String_Node_Str",issue.getAssignee());
  assignees.setNullValid(true);
  add(assignees);
  Button assignToMe=new Button("String_Node_Str"){
    @Override public void onSubmit(){
      issue.setAssignee(((HeadsUpSession)getSession()).getUser());
      issue.getWatchers().add(((HeadsUpSession)getSession()).getUser());
      assignees.setChoices(new LinkedList<User>(owner.getSecurityManager().getRealUsers()));
      assignees.setModelObject(((HeadsUpSession)getSession()).getUser());
      assignees.modelChanged();
      super.onSubmit();
    }
  }
;
  assignToMe.setVisible(issue.getStatus() < Issue.STATUS_RESOLVED && !((HeadsUpSession)getSession()).getUser().equals(issue.getAssignee()));
  add(assignToMe.setDefaultFormProcessing(false));
  if (creating) {
    add(new WebMarkupContainer("String_Node_Str").setVisible(false));
    add(new WebMarkupContainer("String_Node_Str").setVisible(false));
  }
 else {
    add(new Label("String_Node_Str",new FormattedDateModel(issue.getCreated(),((HeadsUpSession)getSession()).getTimeZone())));
    add(new Label("String_Node_Str",new FormattedDateModel(issue.getUpdated(),((HeadsUpSession)getSession()).getTimeZone())));
  }
  add(new TextField("String_Node_Str").setRequired(false));
  add(new Label("String_Node_Str",new Model<String>(){
    @Override public String getObject(){
      return IssueUtils.getWatchersDescription(issue,((HeadsUpSession)getSession()).getUser());
    }
  }
));
  add(new TextField("String_Node_Str").setRequired(true));
  add(new TextField("String_Node_Str"));
  boolean useTime=Boolean.parseBoolean(issue.getProject().getConfigurationValue(StoredProject.CONFIGURATION_TIMETRACKING_ENABLED));
  boolean required=useTime && Boolean.parseBoolean(issue.getProject().getConfigurationValue(StoredProject.CONFIGURATION_TIMETRACKING_REQUIRED));
  Duration timeEstimated=issue.getTimeEstimate();
  if (timeEstimated == null) {
    timeEstimated=new Duration(0,Duration.UNIT_HOURS);
    issue.setTimeEstimate(timeEstimated);
  }
  add(new DurationEditPanel("String_Node_Str",new Model<Duration>(issue.getTimeEstimate())).setRequired(required).setVisible(useTime));
  boolean showRemain=!creating && Boolean.parseBoolean(issue.getProject().getConfigurationValue(StoredProject.CONFIGURATION_TIMETRACKING_BURNDOWN));
  boolean resolved=issue.getStatus() >= Issue.STATUS_RESOLVED;
  Duration timeRequired=issue.getTimeRequired();
  if (timeRequired == null) {
    timeRequired=new Duration(0,Duration.UNIT_HOURS);
    issue.setTimeRequired(timeRequired);
  }
  add(new DurationEditPanel("String_Node_Str",new Model<Duration>(timeRequired)).setRequired(required).setVisible(useTime && (resolved || showRemain)));
  add(new CheckBox("String_Node_Str").setVisible(useTime));
  add(new TextArea("String_Node_Str"));
  add(new TextArea("String_Node_Str"));
  if (creating) {
    add(attachmentPanel=new AttachmentPanel("String_Node_Str",owner));
  }
 else {
    add(new WebMarkupContainer("String_Node_Str").setVisible(false));
  }
}

Fixed version (ground truth):
public IssueForm(String id,final Issue issue,boolean creating,final HeadsUpPage owner,EditIssueForm parent){
  super(id);
  this.issue=issue;
  this.owner=owner;
  this.parent=parent;
  this.creating=creating;
  this.oldAssignee=issue.getAssignee();
  if (issue.getTimeRequired() != null) {
    this.oldTimeRequired=new Duration(issue.getTimeRequired());
  }
  setModel(new CompoundPropertyModel<Issue>(issue));
  add(new Label("String_Node_Str",issue.getProject().getAlias()));
  add(new IssueTypeDropDownChoice("String_Node_Str",IssueUtils.getTypes()));
  add(new DropDownChoice<Integer>("String_Node_Str",IssueUtils.getPriorities()){
    public boolean isNullValid(){
      return false;
    }
  }
.setChoiceRenderer(new IChoiceRenderer<Integer>(){
    public Object getDisplayValue(    Integer i){
      return IssueUtils.getPriorityName(i);
    }
    public String getIdValue(    Integer o,    int i){
      return o.toString();
    }
  }
));
  add(new TextField("String_Node_Str"));
  add(new MilestoneDropDownChoice("String_Node_Str",issue.getProject(),issue.getMilestone()).setNullValid(true));
  Label status=new Label("String_Node_Str",new Model<String>(){
    @Override public String getObject(){
      return IssueUtils.getStatusName(issue.getStatus());
    }
  }
);
  add(status);
  add(new Label("String_Node_Str",issue.getReporter().getFullnameOrUsername()));
  final DropDownChoice<User> assignees=new UserDropDownChoice("String_Node_Str",issue.getAssignee());
  assignees.setNullValid(true);
  add(assignees);
  toggleWatchers=new CheckBox("String_Node_Str",new Model<Boolean>(){
    private boolean toggle;
    @Override public void setObject(    Boolean object){
      toggle=object;
    }
    @Override public Boolean getObject(){
      return toggle;
    }
  }
);
  toggleWatchers.setModelObject(true);
  toggleWatchers.setVisible(creating);
  add(toggleWatchers);
  Button assignToMe=new Button("String_Node_Str"){
    @Override public void onSubmit(){
      issue.setAssignee(((HeadsUpSession)getSession()).getUser());
      if (toggleWatchers.getModelObject()) {
        issue.getWatchers().add(((HeadsUpSession)getSession()).getUser());
      }
      assignees.setChoices(new LinkedList<User>(owner.getSecurityManager().getRealUsers()));
      assignees.setModelObject(((HeadsUpSession)getSession()).getUser());
      assignees.modelChanged();
      super.onSubmit();
    }
  }
;
  assignToMe.setVisible(issue.getStatus() < Issue.STATUS_RESOLVED && !((HeadsUpSession)getSession()).getUser().equals(issue.getAssignee()));
  add(assignToMe.setDefaultFormProcessing(false));
  if (creating) {
    add(new WebMarkupContainer("String_Node_Str").setVisible(false));
    add(new WebMarkupContainer("String_Node_Str").setVisible(false));
  }
 else {
    add(new Label("String_Node_Str",new FormattedDateModel(issue.getCreated(),((HeadsUpSession)getSession()).getTimeZone())));
    add(new Label("String_Node_Str",new FormattedDateModel(issue.getUpdated(),((HeadsUpSession)getSession()).getTimeZone())));
  }
  add(new TextField("String_Node_Str").setRequired(false));
  add(new Label("String_Node_Str","String_Node_Str").setVisible(creating));
  add(new Label("String_Node_Str",new Model<String>(){
    @Override public String getObject(){
      return IssueUtils.getWatchersDescription(issue,((HeadsUpSession)getSession()).getUser());
    }
  }
).setVisible(!creating));
  add(new TextField("String_Node_Str").setRequired(true));
  add(new TextField("String_Node_Str"));
  boolean useTime=Boolean.parseBoolean(issue.getProject().getConfigurationValue(StoredProject.CONFIGURATION_TIMETRACKING_ENABLED));
  boolean required=useTime && Boolean.parseBoolean(issue.getProject().getConfigurationValue(StoredProject.CONFIGURATION_TIMETRACKING_REQUIRED));
  Duration timeEstimated=issue.getTimeEstimate();
  if (timeEstimated == null) {
    timeEstimated=new Duration(0,Duration.UNIT_HOURS);
    issue.setTimeEstimate(timeEstimated);
  }
  add(new DurationEditPanel("String_Node_Str",new Model<Duration>(issue.getTimeEstimate())).setRequired(required).setVisible(useTime));
  boolean showRemain=!creating && Boolean.parseBoolean(issue.getProject().getConfigurationValue(StoredProject.CONFIGURATION_TIMETRACKING_BURNDOWN));
  boolean resolved=issue.getStatus() >= Issue.STATUS_RESOLVED;
  Duration timeRequired=issue.getTimeRequired();
  if (timeRequired == null) {
    timeRequired=new Duration(0,Duration.UNIT_HOURS);
    issue.setTimeRequired(timeRequired);
  }
  add(new DurationEditPanel("String_Node_Str",new Model<Duration>(timeRequired)).setRequired(required).setVisible(useTime && (resolved || showRemain)));
  add(new CheckBox("String_Node_Str").setVisible(useTime));
  add(new TextArea("String_Node_Str"));
  add(new TextArea("String_Node_Str"));
  if (creating) {
    add(attachmentPanel=new AttachmentPanel("String_Node_Str",owner));
  }
 else {
    add(new WebMarkupContainer("String_Node_Str").setVisible(false));
  }
}