<%@page import="geysers.utils.GeysersSiteProperties" %> <%@page import= "java.sql.*"%> <%@page import= "oracle.sql.*"%> <%@page import="java.io.*"%> <%@page import= "oracle.jdbc.driver.*"%> <%@page import="java.util.*"%> <%@page import="CIStems.utils.logWriter.LogWriter"%> <%@page import="geysers.utils.CP" %> <% String qno=request.getParameter("qno"); Hashtable externalDoc = null; // externalDoc = (Hashtable) session.getAttribute("LabExternalDoc"); // Hashtable tempdata1 = (Hashtable) externalDoc.get(key); // String filename = ((String)tempdata1.get("filename")); String filename=""; byte[] arrImage = null; BLOB blob = null; int intLength = 0; String strQuery = ""; String first = ""; String last = ""; Connection conn = null; Statement stmt = null; ResultSet rs = null; try { String DATABASE_INFO = GeysersSiteProperties.getString("DatabaseInfo"); String DRIVER_NAME = GeysersSiteProperties.getString("DatabaseDriver"); String username = GeysersSiteProperties.getString("DatabaseUserName"); String password = GeysersSiteProperties.getString("DatabasePassword"); Class.forName(DRIVER_NAME); conn = DriverManager.getConnection(DATABASE_INFO,username,password); conn.setAutoCommit(false); stmt = conn.createStatement(); strQuery = "select filename from com_pqu where qno = '" + qno + "'"; CP.sop("SQL query: "+strQuery); rs = stmt.executeQuery(strQuery); if(rs.next()) { filename = rs.getString("filename"); } strQuery = "select forminfo from com_pqu where qno = '" + qno + "'"; CP.sop("SQL query: "+strQuery); rs = stmt.executeQuery(strQuery); if(rs.next()) { blob = ((OracleResultSet)rs).getBLOB("forminfo"); CP.sop("blob is "+blob); intLength = (int)blob.length(); CP.sop("Array length is "+intLength); arrImage = new byte[intLength]; arrImage = blob.getBytes(1,intLength); CP.sop("!!! OK READ !!!"); /*ServletOutputStream os =response.getOutputStream(); os.write(arrImage); os.flush();*/ } System.out.println("filename**"+filename); StringTokenizer token = new StringTokenizer(filename,"."); while (token.hasMoreTokens()) { first = token.nextToken(); last = token.nextToken(); } System.out.println("last**"+last); if(last.equalsIgnoreCase("pdf")){ response.setContentType("application/pdf"); response.setHeader("Content-Disposition","inline; filename=\"fax.pdf\""); ServletOutputStream os = response.getOutputStream(); os.write(arrImage); os.flush(); } else if(last.equalsIgnoreCase("doc")) { response.setContentType("application/msword"); response.setHeader("Content-Disposition","inline; filename=\"fax.doc\""); ServletOutputStream os = response.getOutputStream(); os.write(arrImage); os.flush(); } else if(last.equalsIgnoreCase("jpg") || (last.equalsIgnoreCase("jpeg"))){ response.setContentType("application/jpg"); response.setHeader("Content-Disposition","inline; filename=\"fax.jpg\""); ServletOutputStream os = response.getOutputStream(); os.write(arrImage); os.flush(); } else if(last.equalsIgnoreCase("gif")) { response.setContentType("application/gif"); response.setHeader("Content-Disposition","inline; filename=\"fax.gif\""); ServletOutputStream os = response.getOutputStream(); os.write(arrImage); os.flush(); } else { response.setContentType("application/txt"); response.setHeader("Content-Disposition","inline; filename=\"fax.txt\""); ServletOutputStream os = response.getOutputStream(); os.write(arrImage); os.flush(); } } catch (SQLException se) { se.printStackTrace(); } finally { CP.sop("Comes out finally"); try { if (rs != null) rs.close(); if (stmt != null) stmt.close(); if (conn!= null) conn.close(); } catch(SQLException se){ se.printStackTrace(); } } %>