When try to use rich:FileUpload with ViewScoped and STATE_SAVING_METHOD = Client in web.xml, randomly the response is "Server error" and the component doesn't call the listener.
After some studies, we discovery that error occurs when the javax.faces.ViewState is too large.
The fileupload.js file call this.xhr.open('POST', newAction, true), and newAction receives the String: "&javax.faces.ViewState=" + encodeURIComponent(viewState);
When xhr method use POST, there's no need to use queryString in newAction.
To resolve this bug, we remove the line &javax.faces.ViewState=" + encodeURIComponent(viewState);