FormPanel submit() works fine in IE... but the submit() method doesn't fire a POST in FF or Chrome. So because it works in IE we know that the client/server code and parameters (i.e. action, encoding, and method) are correct.

The form is dynamically created, so I read that you need to append it to the document.body before submitting... tried this and it didn't work. And when I say the form is dynamically created, I mean the form itself and not the Elements in the form. I played with the hierarchy of components within the GUI and had no luck. Anyways here the code...

BorderLayoutContainer windowBody = new BorderLayoutContainer();
windowBody.setStyleName(GlobalResources.INSTANCE.globalStyle().whiteBackground());

...

// defining center region
centerVBLC = new VBoxLayoutContainer();
centerVBLC.setVBoxLayoutAlign(VBoxLayoutAlign.STRETCH);
centerVBLC.setPadding(new Padding(5));

labelBLD = new BoxLayoutData();
labelBLD.setMargins(new Margins(3));

labelHBLC.add(new Label("Give Meet and Confer a Name:"), labelBLD);

fileUploadField.setEnabled(false);
fileUploadField.setName("uploadFormElement");

centerVBLC.add(labelHBLC);
centerVBLC.add(centerTB, labelBLD);
centerVBLC.add(fileUploadField, labelBLD);
formPanel.setAction(GWT.getHostPageBaseURL() + "fileupload");
formPanel.setEncoding(Encoding.MULTIPART);
formPanel.setMethod(Method.POST);

...

Button uploadButton = new Button("Upload...");
uploadButton.setStyleName(ButtonResources.INSTANCE.buttonStyle().button(), true);
uploadButton.setStyleName(ButtonResources.INSTANCE.buttonStyle().green(), true);

uploadButton.addClickHandler(new ClickHandler(){
@Override
public void onClick(ClickEvent event){
if(fileUploadField.isEnabled()){
fileUploadField.setEnabled(false);
} else{
fileUploadField.setEnabled(true);
}
}
});

...

Button submitButton = new Button("Submit");

submitButton.addClickHandler(new ClickHandler(){
@Override
public void onClick(ClickEvent event){
if(formPanel.isValid()){
// didn't work
// if(!GXT.isIE()){
// Document.get().getBody().appendChild(form.getElement());
// }
formPanel.submit();
hide();
}
});