]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - servlet/CmsRcpServlet.java
1 package org
.argeo
.cms
.ui
.rcp
.servlet
;
3 import java
.io
.IOException
;
4 import java
.lang
.System
.Logger
;
5 import java
.lang
.System
.Logger
.Level
;
6 import java
.util
.Objects
;
8 import javax
.servlet
.ServletException
;
9 import javax
.servlet
.http
.HttpServlet
;
10 import javax
.servlet
.http
.HttpServletRequest
;
11 import javax
.servlet
.http
.HttpServletResponse
;
13 import org
.argeo
.api
.cms
.CmsApp
;
14 import org
.argeo
.cms
.ui
.rcp
.CmsRcpDisplayFactory
;
16 /** Open the related app when called. */
17 public class CmsRcpServlet
extends HttpServlet
{
18 private static final long serialVersionUID
= -3944472431354848923L;
19 private final static Logger logger
= System
.getLogger(CmsRcpServlet
.class.getName());
21 private CmsApp cmsApp
;
23 public CmsRcpServlet(CmsApp cmsApp
) {
24 Objects
.requireNonNull(cmsApp
);
29 protected void doGet(HttpServletRequest req
, HttpServletResponse resp
) throws ServletException
, IOException
{
30 String path
= req
.getPathInfo();
31 String uiName
= path
!= null ? path
.substring(path
.lastIndexOf('/') + 1) : "";
32 CmsRcpDisplayFactory
.openCmsApp(cmsApp
, uiName
, null);
33 logger
.log(Level
.DEBUG
, "Opened RCP UI " + uiName
+ " of CMS App " + req
.getServletPath());