View Javadoc
1   package org.exoplatform.services.handler;
2   
3   import java.io.PrintWriter;
4   
5   import javax.servlet.http.HttpServletRequest;
6   import javax.servlet.http.HttpServletResponse;
7   
8   import org.exoplatform.services.seo.SEOService;
9   import org.exoplatform.services.wcm.utils.WCMCoreUtils;
10  import org.exoplatform.web.ControllerContext;
11  import org.exoplatform.web.WebAppController;
12  import org.exoplatform.web.WebRequestHandler;
13  import org.exoplatform.web.controller.QualifiedName;
14  
15  public class SitemapHandler extends WebRequestHandler {
16  
17    private String portalName = null;
18    public String getHandlerName()
19    {
20      return "sitemap";
21    }
22    @Override
23    public boolean execute(ControllerContext context) throws Exception
24    {
25       portalName = context.getParameter(QualifiedName.create("gtn", "sitename"));
26       execute(context.getController(), context.getRequest(), context.getResponse());
27       return true;
28    }
29    public void execute(WebAppController controller, HttpServletRequest req, HttpServletResponse res) throws Exception  {
30    String sitemapContent = "";
31      if(portalName != null && portalName.length() > 0) {
32        SEOService seoService = WCMCoreUtils.getService(SEOService.class);
33        sitemapContent = seoService.getSitemap(portalName);
34        res.setContentType("text/xml");
35        PrintWriter out = res.getWriter();
36        out.println(sitemapContent);
37      }
38    }
39  
40    public boolean getRequiresLifeCycle() {
41      return true;
42    }
43  }