Friday, 20 March 2015

Struts2 File Upload


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package com.lkr.actions;

import java.io.File;
import java.util.ArrayList;

import javax.xml.parsers.ParserConfigurationException;

import org.apache.commons.io.FilenameUtils;
import org.xml.sax.SAXException;

import com.opensymphony.xwork2.ActionSupport;

public class UploadAction extends ActionSupport{

 
 
 private File upload;
 private String uploadContentType;
 private String uploadFileName;
 private int questionCount;
 
 
 
 public int getQuestionCount() {
  return questionCount;
 }
 public void setQuestionCount(int questionCount) {
  this.questionCount = questionCount;
 }
 public UploadAction(){
  
 }

 
 
 public String execute() {
  
  if (getUploadFileName() != null) {

   // filePath = servletRequest.getRealPath("/");
   String fileNameWithOutExt = FilenameUtils
     .removeExtension(this.uploadFileName);
   System.out.println("file to create..........." + fileNameWithOutExt);
   }
 
  return SUCCESS;
 
 }
 
 /**
  * @return the upload
  */
 public File getUpload() {
  return upload;
 }
 /**
  * @param upload the upload to set
  */
 public void setUpload(File upload) {
  this.upload = upload;
 }
 /**
  * @return the uploadContentType
  */
 public String getUploadContentType() {
  return uploadContentType;
 }
 /**
  * @param uploadContentType the uploadContentType to set
  */
 public void setUploadContentType(String uploadContentType) {
  this.uploadContentType = uploadContentType;
 }
 /**
  * @return the uploadFileName
  */
 public String getUploadFileName() {
  return uploadFileName;
 }
 /**
  * @param uploadFileName the uploadFileName to set
  */
 public void setUploadFileName(String uploadFileName) {
  this.uploadFileName = uploadFileName;
 }
 
 
 
 

}
upload.jsp


in the upload.jsp the form method should be post and enctype="multipart/form-data"


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<style>
input[type="radio"] {
 margin-top: -1px;
 vertical-align: middle;
}
</style>
</head>

<body>
 <h1>Struts 2 radio button example</h1>

 <s:form action="resultAction" namespace="/" enctype="multipart/form-data" theme="simple" method="POST">

  <h4>
   <s:file name="upload" id="upload1">
   </s:file>
   
  </h4>

  <s:submit value="submit" name="submit" />

 </s:form>

</body>
</html>


struts.xml exam/result.jsp