[222258] problems with XML and text fields
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/utility/swt/TextFieldModelBinding.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/utility/swt/TextFieldModelBinding.java
index a2a8c86..5bb0c4e 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/utility/swt/TextFieldModelBinding.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/utility/swt/TextFieldModelBinding.java
@@ -59,6 +59,11 @@
 	 */
 	private final DisposeListener textFieldDisposeListener;
 
+	/**
+	 * Hmm...
+	 */
+	private boolean settingTextFieldText = false;
+
 
 	// ********** constructor **********
 
@@ -139,11 +144,21 @@
 
 	private void setTextFieldText(String text) {
 		// the text model can be null, but the text field cannot
-		if (text == null) {
-			text = "";
-		}
+		this.setTextFieldText_((text == null) ? "" : text);
+	}
+
+	private void setTextFieldText_(String text) {
 		if ( ! text.equals(this.textField.getText())) {  // ???
+			this.setTextFieldText__(text);
+		}
+	}
+
+	private void setTextFieldText__(String text) {
+		this.settingTextFieldText = true;
+		try {
 			this.textField.setText(text);
+		} finally {
+			this.settingTextFieldText = false;
 		}
 	}
 
@@ -151,7 +166,9 @@
 	// ********** text field events **********
 
 	/* private */ void textFieldModified() {
-		this.setTextModelText(this.textField.getText());
+		if ( ! this.settingTextFieldText) {
+			this.setTextModelText(this.textField.getText());
+		}
 	}
 
 	private void setTextModelText(String text) {