/** * */ package org.exoplatform.faq.service.ws; import java.io.InputStream; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.CacheControl; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; import org.exoplatform.container.ExoContainerContext; import org.exoplatform.faq.service.FAQService; import org.exoplatform.services.rest.resource.ResourceContainer; /** * @author Uoc Nguyen * */ @Path("ks/faq") public class FAQWebservice implements ResourceContainer { protected final static String JSON_CONTENT_TYPE = MediaType.APPLICATION_JSON; final public static String APP_TYPE = "faq".intern(); public FAQWebservice() { } @GET @Path("rss/{resourceid}") @Produces(MediaType.APPLICATION_XML) public Response viewrss(@PathParam("resourceid") String resourceid) throws Exception { CacheControl cacheControl = new CacheControl(); cacheControl.setNoCache(true); cacheControl.setNoStore(true); try { FAQService faqService = (FAQService) ExoContainerContext.getCurrentContainer().getComponentInstanceOfType(FAQService.class); InputStream is = faqService.createAnswerRSS(resourceid); return Response.ok(is, MediaType.APPLICATION_XML).cacheControl(cacheControl).build(); } catch (Exception e) { return Response.status(Status.INTERNAL_SERVER_ERROR).build(); } } }