Program: 148011
Project: 148011
Buggy source:
protected void commit(){
  try {
    if (this.refreshing)     return;
    this.comitting=true;
    WSRoutingRule ws=(WSRoutingRule)(getXObject().getWsObject());
    ws.setDescription(descriptionText.getText());
    ws.setConcept(objectTypeText.getText());
    ws.setServiceJNDI(serviceNameCombo.getText().contains("String_Node_Str") ? serviceNameCombo.getText() : "String_Node_Str" + serviceNameCombo.getText());
    String curServiceParameter=serviceParametersEditor.getContent().getContent();
    ws.setParameters("String_Node_Str".equals(curServiceParameter) ? null : curServiceParameter);
    serviceParametersEditor.clearExternalResources();
    ws.setSynchronous(isSynchronousButton.getSelection());
    ws.setDeactive(deactiveButton.getSelection());
    java.util.List<Line> lines=(java.util.List<Line>)conditionViewer.getViewer().getInput();
    java.util.List<WSRoutingRuleExpression> wclist=new ArrayList<WSRoutingRuleExpression>();
    for (    Line item : lines) {
      String[] values=new String[]{item.keyValues.get(0).value,item.keyValues.get(1).value,item.keyValues.get(2).value,item.keyValues.get(3).value};
      WSRoutingRuleExpression wc=Util.convertLineRoute(values);
      wclist.add(wc);
    }
    ws.setWsRoutingRuleExpressions(wclist.toArray(new WSRoutingRuleExpression[wclist.size()]));
    ws.setCondition(conditionText.getText());
    this.comitting=false;
    ServerView view=ServerView.show();
    view.getViewer().refresh();
  }
 catch (  Exception e) {
    log.error(e.getMessage(),e);
    MessageDialog.openError(this.getSite().getShell(),"String_Node_Str","String_Node_Str" + e.getLocalizedMessage());
  }
}

Fixed version (ground truth):
protected void commit(){
  try {
    if (this.refreshing)     return;
    this.comitting=true;
    WSRoutingRule ws=(WSRoutingRule)(getXObject().getWsObject());
    ws.setDescription(descriptionText.getText());
    ws.setConcept(objectTypeText.getText());
    ws.setServiceJNDI(serviceNameCombo.getText().contains("String_Node_Str") ? serviceNameCombo.getText() : "String_Node_Str" + serviceNameCombo.getText());
    String curServiceParameter=serviceParametersEditor.getContent().getContent();
    ws.setParameters("String_Node_Str".equals(curServiceParameter) ? null : curServiceParameter);
    serviceParametersEditor.clearExternalResources();
    ws.setSynchronous(isSynchronousButton.getSelection());
    ws.setDeactive(deactiveButton.getSelection());
    java.util.List<Line> lines=(java.util.List<Line>)conditionViewer.getViewer().getInput();
    java.util.List<WSRoutingRuleExpression> wclist=new ArrayList<WSRoutingRuleExpression>();
    for (    Line item : lines) {
      String[] values=new String[]{item.keyValues.get(0).value,item.keyValues.get(1).value,item.keyValues.get(2).value,item.keyValues.get(3).value};
      WSRoutingRuleExpression wc=Util.convertLineRoute(values);
      wclist.add(wc);
    }
    ws.setWsRoutingRuleExpressions(wclist.toArray(new WSRoutingRuleExpression[wclist.size()]));
    ws.setCondition(conditionText.getText());
    this.comitting=false;
    refreshServerView();
  }
 catch (  Exception e) {
    log.error(e.getMessage(),e);
    MessageDialog.openError(this.getSite().getShell(),"String_Node_Str","String_Node_Str" + e.getLocalizedMessage());
  }
}