Mercurial > hg > fulltextSearchServer
diff src/de/mpiwg/dwinter/fulltextSearchServer/ShowResultInfoOfTicket.java @ 0:db87c1b7eb6d
initial
author | dwinter |
---|---|
date | Wed, 03 Nov 2010 12:18:46 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/de/mpiwg/dwinter/fulltextSearchServer/ShowResultInfoOfTicket.java Wed Nov 03 12:18:46 2010 +0100 @@ -0,0 +1,60 @@ +package de.mpiwg.dwinter.fulltextSearchServer; + +import java.io.FileNotFoundException; +import java.io.IOException; + +import org.apache.log4j.Logger; +import org.jdom.JDOMException; +import org.restlet.data.Form; +import org.restlet.data.MediaType; +import org.restlet.representation.Representation; +import org.restlet.representation.StringRepresentation; +import org.restlet.resource.Get; +import org.restlet.resource.Options; +import org.restlet.resource.ServerResource; + +import de.mpiwg.dwinter.fulltext.ticket.TicketWriter; + +public class ShowResultInfoOfTicket extends ServerResource { + Logger logger = Logger.getRootLogger(); + + //need options for crossdomain scripting + @Options + public void doOptions(Representation entity) { + Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers"); + if (responseHeaders == null) { + responseHeaders = new Form(); + getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders); + } + responseHeaders.add("Access-Control-Allow-Origin", "*"); + responseHeaders.add("Access-Control-Allow-Methods", "POST,OPTIONS,GET"); + responseHeaders.add("Access-Control-Allow-Headers", "Content-Type"); + responseHeaders.add("Access-Control-Allow-Credentials", "false"); + responseHeaders.add("Access-Control-Max-Age", "60"); + } + + + @Get("xml") + public Representation getHTML( ) throws NumberFormatException, JDOMException, FileNotFoundException, IOException { + logger.debug("show result of ticker: get HTML"); + + // response header fuer cross-site.scripting + Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers"); + if (responseHeaders == null) { + responseHeaders = new Form(); + getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders); + } + responseHeaders.add("Access-Control-Allow-Origin", "*"); + + + String ticket = (String) getRequest().getAttributes().get("ticket") ; + String lang = (String) getRequest().getAttributes().get("lang") ; + + String xml = TicketWriter.getResultInfoXML(ticket, lang); + + + StringRepresentation representation = new StringRepresentation(xml, + MediaType.TEXT_XML) ; + return representation; + } +}