Dear All,
I am getting junk when I am using this code.
Pls correct.
My code is as follows:
==========
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ page session="true" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.Iterator" %>
<%@ page import="org.apache.commons.fileupload.servlet.Serv letFileUpload"%>
<%@ page import="org.apache.commons.fileupload.disk.DiskFil eItemFactory"%>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@ include file="connection.inc"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/>
<title>saveattachments</title>
</head>
<body>
<center><table border="2" width="100%">
<tr><td><h1>Your files uploaded </h1></td></tr>
<%
String sql = "";
String fileName = "";
try
{
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (!isMultipart) {
} else {
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List items = null;
try {
items = upload.parseRequest(request);
} catch (FileUploadException e) {
e.printStackTrace();
}
Iterator itr = items.iterator();
while (itr.hasNext()) {
FileItem item = (FileItem) itr.next();
//String filestring = item.getString();
if (item.isFormField()) {
} else {
try {
fileName = item.getName();
if (fileName!=null)
{
int fileSize = (int)item.getSize();
int attachid = 0;
sql = "select max(attach_id) aid from attachments";
ngrs = ngstmt.executeQuery(sql);
if (ngrs.next())
{
attachid = ngrs.getInt("aid")+1;
}
else
{
attachid = 1;
}
out.println(attachid);
InputStream iStream = item.getInputStream();
sql = " INSERT INTO ATTACHMENTS (ATTACH_ID,FILENO,ATTACHED_FILE,FILENAME) VALUES (?,?,?,?) ";
ngstmt3 = ngcon.prepareStatement(sql);
ngstmt3.setInt(1,attachid);//set docid
ngstmt3.setInt(2,1);//set Case File Number
ngstmt3.setBinaryStream(3,iStream,fileSize);
ngstmt3.setString(4,fileName);//set the filename
ngstmt3.execute();
ngcon.commit();
out.println("done");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
%>
</table>
</center>
Reading file.
<%
try
{
byte[] fileBytes = new byte[5000000];
sql = "select * from attachments where attach_id=1";
ngrs = ngstmt.executeQuery(sql);
if (ngrs.next())
{
/* Code to retrieve from Blob field */
fileBytes = ngrs.getBytes("attached_file");
fileName = ngrs.getString("filename");
}
/* Code for download */
//String fileName = brsPlanDocument.getFileName();
String fileType = fileName.substring(fileName.indexOf(".")+1,fileNam e.length());
if (fileType.trim().equalsIgnoreCase("txt"))
{
response.setContentType( "text/plain" );
}
else if (fileType.trim().equalsIgnoreCase("doc"))
{
response.setContentType( "application/msword" );
}
else if (fileType.trim().equalsIgnoreCase("xls"))
{
response.setContentType( "application/vnd.ms-excel" );
}
else if (fileType.trim().equalsIgnoreCase("pdf"))
{
response.setContentType( "application/pdf" );
}
else if (fileType.trim().equalsIgnoreCase("ppt"))
{
response.setContentType( "application/ppt" );
}
else
{
response.setContentType( "application/octet-stream" );
}
response.setHeader("Content-Disposition","attachment; filename=\""+fileName+"\"");
//response.setHeader("cache-control", "no-cache");
response.setHeader("cache-control", "must-revalidate");
ServletOutputStream outs = response.getOutputStream();
outs.write(fileBytes);
outs.flush();
outs.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
catch(Exception e)
{
out.println("here"+e.getMessage());
e.printStackTrace();
}
finally
{
if(ngrs!=null)
ngrs.close();
%>
<%@ include file="connectionclose.inc" %>
<%
}
%>
</body>
</html>
Please mail me to
[email protected]
With Regards,
Sheeja Anil