J'ai un problème de lecture un fichier en locale depuis une page jsp executer côté serveur:
le code de la page JSP pour récupérer le fichier depuis le disque dur du client:
le code de la page JSP pour le traitement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <script type="text/javascript"> function affichePath(){ var fich; fich=document.getElementById('fichier').value; if (fich=="") alert('veuillez choisir un fichier'); else{ document.cloture.action="affichepath.jsp"; document.cloture.submit();} } </script> <body> <table width="100%" border="0"> <tr> <tr> <jsp:include page="header.jsp"/> </tr> </tr> <tr> <td width="100%" height="500px" align="left" background="white" > <form method="post" enctype="multipart/form-data" name="cloture"> <table class="tablerel"> <tr class= "jaunef"> <td width="100" >fichier : </td> <td width="500"><input type="file" id="fichier" name="fichier" ></td> </tr> <tr> <td><input class="btn" type="button" onclick="affichePath();" value="Cloturer"></td> <td> </td> </tr> <tr> <td style="white-space:nowrap;">${sessionScope.total}</td><td>${sessionScope.tot}</td></tr> <tr> <tr> <td style="white-space:nowrap;">${sessionScope.messageclot}</td><td>${sessionScope.recclot}</td></tr> <tr> <td style="white-space:nowrap;">${sessionScope.messagenonclot}</td><td>${sessionScope.nonclot}</td> <td> </td> </tr> </table> </form> <table>
* le problème c'est que je n'arrive pas à récupérer le fichier depuis le disque local du client,il cherche le fichier sur le serveur du tomcat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <% java.sql.Date sqlDate = new java.sql.Date(new java.util.Date().getTime()); FileChannel in1 = null; // canal d'entrée FileChannel in2 = null; // canal d'entrée FileChannel out1 = null; // canal de sortie FileChannel out2 = null; // canal de sortie String fichiersor="c:/noncloturer"+sqlDate+".txt"; String fichierclot="c:/cloturer"+sqlDate+".txt"; String fichierenter=null; PreparedStatement ps = null; PreparedStatement psi = null; PreparedStatement psu=null; String path=null; int i=0; int j=0; int k=0; String nom =null; Context initContext = new InitialContext(); Context envContext = (Context)initContext.lookup("java:/comp/env"); DataSource ds = (DataSource)envContext.lookup("jdbc/file"); Connection oraConn = ds.getConnection(); oraConn.setAutoCommit(false); FileWriter fwr = new FileWriter (fichierclot); BufferedWriter bwr = new BufferedWriter (fwr); PrintWriter fichierClot = new PrintWriter (bwr); FileWriter fw = new FileWriter (fichiersor); BufferedWriter bw = new BufferedWriter (fw); PrintWriter fichierSor = new PrintWriter (bw); // Check that we have a file upload request boolean isMultipart = ServletFileUpload.isMultipartContent(request); // Create a factory for disk-based file items FileItemFactory factory = new DiskFileItemFactory(); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); // Parse the request List /* FileItem */ items = upload.parseRequest(request); //out.print(request); // Process the uploaded items Iterator iter = items.iterator(); //out.print(iter); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); //out.print(item); File fullFile = new File(item.getName()); //out.print(fullFile); nom=fullFile.getName(); path=fullFile.getAbsolutePath(); String ligne; String etat=null; ResultSet rs = null; fichierenter="c:/"+nom; Reader r = new BufferedReader(new FileReader(fichierenter)); InputStream ips=new FileInputStream(fichierenter); InputStreamReader ipsr=new InputStreamReader(ips); BufferedReader br=new BufferedReader(ipsr); fichierClot.println ("Les cloturer : "); fichierSor.println ("Les non cloturer : "); while ((ligne=br.readLine())!=null){ // traitement } } bwr.close(); bw.close(); %>
Partager