/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.fitbank.servlet;

import com.fitbank.common.exception.FitbankException;
import com.fitbank.exception.ExceptionHandler;
import com.fitbank.web.LOV;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class LOVServlet extends HttpServlet{
    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
		@Override
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
			response.setHeader("Expires", "Sat, 6 May 1995 12:00:00 GMT");
			response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate"); 
			response.addHeader("Cache-Control", "post-check=0, pre-check=0"); 
			response.setHeader("Pragma", "no-cache");
			response.setCharacterEncoding("iso88591");
			response.setContentType("text/html; charset=windows-1252");
			PrintWriter out = response.getWriter();
		  try {
             LOV lov=new LOV(request);
             out.println(lov.getLOVData());

		  }
		  catch (Throwable e) {
			    ExceptionHandler eh=new ExceptionHandler(e,"es");
				out.println(this.getError(eh.getUserMessage()));
				if(!(e  instanceof FitbankException)){ 
				//e.printStackTrace();
		  }
			}finally{
		    	out.close();
		    }
	}
	private String getError(String pError) {
		StringWriter sw = new StringWriter();
		PrintWriter pw = new PrintWriter(sw);
		pw.println("<form name='lov'>");
		pw.println("  <table width='100%' >");
		pw.println("  <tr><td colspan='2'>");
		pw.println("	  <table width='100%'>");
		pw.println("  <tr>");
		pw.println("  <th >" + pError + "</th>");
		pw.println(" </tr></table>");
		pw.println("</td></tr>");
		pw.println("</table></form>");
		pw.close();
		return sw.toString();
	}
}
