Я пытаюсь загрузить файл, но всякий раз, когда я пытаюсь загрузить файл и печатать имя файла, я получаю null и генерируется файл .tmp. Я следил за практикой mkyong's here. Я также пробовал предложения от SO в этом link. К сожалению, я все еще застрял в этом, и предположим, что совершил ошибку, которую я постоянно просматриваю. Я использую tomcat7. Ниже приведены мои файлы:struts2 file upload-получение нулевого имени файла
JSP
<s:form id="login" name="login" method="post" action="uploadResume" enctype="multipart/form-data">
<s:file name="uploadFile" label="Select a File to upload" size="40"/>
<s:submit value="submit" name="submit" />
</s:form>
struts.xml
<constant name="struts.multipart.saveDir" value="/Users/shibasish/Documents/workspace/MSVenture/src/main/resources" />
<action name="uploadResume" class="com.msventure.web.actions.CompleteProfileAction" method="uploadResume">
<interceptor-ref name="exception"/>
<interceptor-ref name="i18n"/>
<interceptor-ref name="fileUpload">
<param name="allowedTypes">text/plain</param>
<param name="maximumSize">10240</param>
</interceptor-ref>
<result name="success">/profile.jsp</result>
<result name="fail">/login.jsp</result>
<result name="index">/index.jsp</result>
<result name="login">/talent.jsp</result>
</action>
действия класса
private File uploadFile;
private String uploadFileFileName;
public String uploadResume(){
try{
String filePath = "/Users/shibasish/Documents";
System.out.println("Server path:" + filePath);
System.out.println("File Name:" + uploadFileFileName);
File fileToCreate = new File(filePath, uploadFileFileName);
FileUtils.copyFile(uploadFile, fileToCreate);
}catch(Exception e){}
return "success";
}
public File getUploadFile() {
return uploadFile;
}
public void setUploadFile(File uploadFile) {
this.uploadFile = uploadFile;
}
public String getUploadFileFileName() {
return uploadFileFileName;
}
public void setUploadFileFileName(String uploadFileFileName) {
this.uploadFileFileName = uploadFileFileName;
}
pom.xml
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
Пожалуйста, обратите внимание, мутаторов установлены в классе.
Во всех браузерах? –
Да .. я пробовал в chrome и safari.i в настоящее время запускаю его в tomcat7 – coolmego
Пробовал ли вы с более полным пакетом перехватчика в качестве проверки здравомыслия? –