Я не могу загружать файлы в FireFox и Safari, но я могу успешно делать это в проводнике.Когда я попытался отладить, я обнаружил, что в случае IE браузер загрузки выдает весь файл, например, C: \ Documents and Settings \ jjayashree \ My Documents \ price.csv, но где, как в FF и safari, виджет загрузки простодавая имя файла без расширения.ранее код был похож на это if (fileName.contains ("\")) {index = fileName.lastIndexOf ("\");}
if (this.fileName != null && this.fileName.trim().length() > 0 && index >= 0) {
this.fileName = this.fileName.substring(index + 1, this.fileName.length());
int dotPosition = fileName.lastIndexOf('.');
String extension = fileName.substring(dotPosition + 1, fileName.length());
try {
if (profileType.equalsIgnoreCase("sampleProfile")) {
if (extension.equalsIgnoreCase("csv")) {
//fileNameTextBox.setText(this.fileName);
this.form.submit();
} else {
new CustomDialogBox(Nexus.INFO_MESSAGE, MessageConstants.SPECIFY_FILE_NAME_MSG).show();
}
}
} catch (Exception e) {
Window.alert("SPECIFY_VALID_FILE_NAME_MSG");
}
} else {
Window.alert("SPECIFY_A_FILE_MSG");
}
я изменил его, как будто (this.fileName! = Null && this.fileName.trim (). Length ()> 0) {this.fileName = this.fileName.substring (this.fileName.lastIndexOf ("\") + 1, this.fileName.length ());}
я обнаружил, что это работает, но когда то же самое происходит в Linux, я получаю сообщение об ошибке
У меня также возникли сомнения в doPost сервлета iam с использованием fileName.replace ("\","/");
в этом проблема.,Как mozilla встретится с этим fileName.replace (), когда он просто увидит и не найдет ничего, что можно заменить и пойти или запустить, если возникнет исключение