import iset.cmsdk.core.DatabaseConnector;
import iset.cmsdk.core.TemplateLoader;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Vector;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
public class XMLSearch extends HttpServlet {
private static final long serialVersionUID = 5946965066811596464L;
private DatabaseConnector dbConnector = new DatabaseConnector();
private static final String CONTENT_TYPE = "text/html; charset=windows-1252";
private TemplateLoader xmlTpl;
private final Logger logger = Logger.getLogger(getClass());
private String setSword = "";
private String setDefOp = "";
private String setType = "";
private String setResultcount = "";
private String setCreated = "Test";
private boolean tt = true;
public String showContent(HttpServletRequest request, PrintWriter out,
HttpServletResponse response) {
setSword = request.getParameter("sword");
setDefOp = request.getParameter("defop");
setType = request.getParameter("type");
setResultcount = request.getParameter("resultcount");
setCreated = request.getParameter("created");
xmlTpl = new TemplateLoader(request);
// In der XMLSearch.tpl zugriff & ausgabe auf Spaltennamen
xmlTpl.initTemplate("modules/xmlsearch/XMLSearch.tpl");
xmlTpl.setWriter(new StringWriter());
try {
if (tt == true) {
Vector<HashMap<String, Object>> result = new Vector<HashMap<String, Object>>();
result = dbConnector
.getResultVector("SQL Abfrage");
xmlTpl.addToContext("results", result);
// xmlTpl.addToContext("abstract", result);
xmlTpl.addToContext("resultcount", result.size());
}
// Template Setzen
xmlTpl.addToContext("sword", setSword);
xmlTpl.addToContext("defop", setDefOp);
xmlTpl.addToContext("type", setType);
xmlTpl.addToContext("created", setCreated);
// TEMPLATE FERTIG
xmlTpl.mergeTemplateContext();
return xmlTpl.getWriter().toString();
} catch (SQLException e) {
logger.debug(e.getMessage());
} finally {
dbConnector.closeDbConnection();
}
return setType;
}
// @Override
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter outp = response.getWriter();
// XMLWriter writer = new XMLWriter(System.out);
// writer.write(outp);
// writer.close();
outp.println(showContent(request, outp, response));
outp
.println("<a href=http://localhost:8181/renknowNET/xmlsearch?sword=wind&defop=1&type=0>HIER</a>");
// out.println("<meta http-equiv=\"refresh\" content=\"0; URL=http://localhost:8181/renknowNET/xmlsearch?sword=hoch&defop=1&type=0\">");
outp.close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doGet(req, resp);
}