I have run into a simular problem going from Tomcat 5 to Tomcat 6, I had to set many of the file paths as absolute.
Try changing : save_File ="/data2/opt/jakarta-tomcat-4.1.24/webapps/Oa/BOG/" + saveFile; To : save_File ="C:(Plus anything in front of)/data2/opt/jakarta-tomcat-4.1.24/webapps/Oa/BOG/" + saveFile; Change so that the file path is set from the drive, directories, subdirectories to the final destination. -----Original Message----- From: sur_1805 [mailto:[EMAIL PROTECTED] Sent: Friday, June 13, 2008 7:39 AM To: users@tomcat.apache.org Subject: give error in upload a image in tomcat 6 but works well in tomcat 4 I am using tomcat 4 and write jsp page to upload a image in server it works with tomcat 4 but it gives error in upload image in tomcat 6 with the same jsp page .It gives some java.lang.IndexOutOfBoundsException at -- org.apache.jasper.JasperException: An exception occurred processing JSP page /Jsp/BOG/upload_scan.jsp at line 154 151: 152: // creating a new file with the same name and writing the content in new file 153: FileOutputStream fileOut = new FileOutputStream(save_File); 154: fileOut.write(dataBytes, startPos, (endPos - startPos)); 155: fileOut.flush(); 156: fileOut.close(); 157: the code snippets is given below if ((contentType != null) && (contentType.indexOf("multipart/form-data") >= 0)) { DataInputStream in = new DataInputStream(request.getInputStream()); //we are taking the length of Content type data int formDataLength = request.getContentLength(); byte dataBytes[] = new byte[formDataLength]; int byteRead = 0; int totalBytesRead = 0; //this loop converting the uploaded file into byte code while (totalBytesRead < formDataLength) { byteRead = in.read(dataBytes, totalBytesRead,formDataLength); totalBytesRead += byteRead; } String file = new String(dataBytes); //for saving the file name saveFile = file.substring(file.indexOf("filename=\"") + 10); saveFile = saveFile.substring(0, saveFile.indexOf("\n")); saveFile = saveFile.substring(saveFile.lastIndexOf("\\") + 1,saveFile.indexOf("\"")); String extension = saveFile.substring(saveFile.lastIndexOf(".")); int count=0; String sql = "select count(table_id) from bog_table where met_key='" + key+"' and item_id='"+item+"'"; ResultSet rt=null; //out.println(sql); rt = am.fetchRecordSet(sql); String table_id=""; String table_ref=""; if(rt.next()){ count=rt.getInt(1)+1; table_id="TableId-" + count; table_ref= key+"-"+item+"-"+table_id+"-TableRef-" +count; } saveFile = table_ref + extension; save_File ="/data2/opt/jakarta-tomcat-4.1.24/webapps/Oa/BOG/" + saveFile; int lastIndex = contentType.lastIndexOf("="); String boundary = contentType.substring(lastIndex + 1,contentType.length()); int pos; //extracting the index of file pos = file.indexOf("filename=\""); pos = file.indexOf("\n", pos) + 1; pos = file.indexOf("\n", pos) + 1; pos = file.indexOf("\n", pos) + 1; int boundaryLocation = file.indexOf(boundary, pos) - 4; int startPos = ((file.substring(0, pos)).getBytes()).length; int endPos = ((file.substring(0, boundaryLocation)).getBytes()).length; // creating a new file with the same name and writing the content in new file FileOutputStream fileOut = new FileOutputStream(save_File); fileOut.write(dataBytes, startPos, (endPos - startPos)); fileOut.flush(); fileOut.close(); |||||| please give me the solution -- View this message in context: http://www.nabble.com/give-error-in-upload-a-image-in-tomcat-6-but-works -well-in-tomcat-4-tp17822463p17822463.html Sent from the Tomcat - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]