001
014
015 package com.liferay.taglib.portletext;
016
017 import com.liferay.portal.kernel.servlet.PipingServletResponse;
018 import com.liferay.taglib.util.IncludeTag;
019
020 import javax.servlet.RequestDispatcher;
021 import javax.servlet.ServletContext;
022 import javax.servlet.http.HttpServletRequest;
023 import javax.servlet.http.HttpServletResponse;
024 import javax.servlet.jsp.JspException;
025
026
029 public class PreviewTag extends IncludeTag {
030
031 public static void doTag(
032 String portletName, String queryString, boolean showBorders,
033 String width, ServletContext servletContext,
034 HttpServletRequest request, HttpServletResponse response)
035 throws Exception {
036
037 doTag(
038 _PAGE, portletName, queryString, showBorders, width, servletContext,
039 request, response);
040 }
041
042 public static void doTag(
043 String page, String portletName, String queryString,
044 boolean showBorders, String width, ServletContext servletContext,
045 HttpServletRequest request, HttpServletResponse response)
046 throws Exception {
047
048 request.setAttribute(
049 "liferay-portlet:preview:portletName", portletName);
050 request.setAttribute(
051 "liferay-portlet:preview:queryString", queryString);
052 request.setAttribute(
053 "liferay-portlet:preview:showBorders", String.valueOf(showBorders));
054 request.setAttribute("liferay-portlet:preview:width", width);
055
056 RequestDispatcher requestDispatcher =
057 servletContext.getRequestDispatcher(page);
058
059 requestDispatcher.include(request, response);
060 }
061
062 @Override
063 public int doEndTag() throws JspException {
064 try {
065 ServletContext servletContext = getServletContext();
066 HttpServletRequest request = getServletRequest();
067
068 doTag(
069 getPage(), _portletName, _queryString, _showBorders, _width,
070 servletContext, request,
071 new PipingServletResponse(pageContext));
072
073 return EVAL_PAGE;
074 }
075 catch (Exception e) {
076 throw new JspException(e);
077 }
078 }
079
080 public void setPortletName(String portletName) {
081 _portletName = portletName;
082 }
083
084 public void setQueryString(String queryString) {
085 _queryString = queryString;
086 }
087
088 public void setShowBorders(boolean showBorders) {
089 _showBorders = showBorders;
090 }
091
092 public void setWidth(String width) {
093 _width = width;
094 }
095
096 @Override
097 protected String getPage() {
098 return _PAGE;
099 }
100
101 private static final String _PAGE = "/html/taglib/portlet/preview/page.jsp";
102
103 private String _portletName;
104 private String _queryString;
105 private boolean _showBorders;
106 private String _width;
107
108 }