1
22
23 package com.liferay.taglib.portletext;
24
25 import com.liferay.portal.kernel.servlet.StringServletResponse;
26 import com.liferay.taglib.util.IncludeTag;
27
28 import java.io.IOException;
29
30 import javax.servlet.RequestDispatcher;
31 import javax.servlet.ServletContext;
32 import javax.servlet.ServletException;
33 import javax.servlet.http.HttpServletRequest;
34 import javax.servlet.http.HttpServletResponse;
35 import javax.servlet.jsp.JspException;
36
37
42 public class PreviewTag extends IncludeTag {
43
44 public static void doTag(
45 String portletName, String queryString, String width,
46 ServletContext servletContext, HttpServletRequest request,
47 HttpServletResponse response)
48 throws IOException, ServletException {
49
50 doTag(
51 _PAGE, portletName, queryString, width, servletContext, request,
52 response);
53 }
54
55 public static void doTag(
56 String page, String portletName, String queryString, String width,
57 ServletContext servletContext, HttpServletRequest request,
58 HttpServletResponse response)
59 throws IOException, ServletException {
60
61 request.setAttribute(
62 "liferay-portlet:preview:portletName", portletName);
63 request.setAttribute(
64 "liferay-portlet:preview:queryString", queryString);
65 request.setAttribute("liferay-portlet:preview:width", width);
66
67 RequestDispatcher requestDispatcher =
68 servletContext.getRequestDispatcher(page);
69
70 requestDispatcher.include(request, response);
71 }
72
73 public int doEndTag() throws JspException {
74 try {
75 ServletContext servletContext = getServletContext();
76 HttpServletRequest request = getServletRequest();
77 StringServletResponse response = getServletResponse();
78
79 doTag(
80 getPage(), _portletName, _queryString, _width, servletContext,
81 request, response);
82
83 pageContext.getOut().print(response.getString());
84
85 return EVAL_PAGE;
86 }
87 catch (Exception e) {
88 throw new JspException(e);
89 }
90 }
91
92 public void setPortletName(String portletName) {
93 _portletName = portletName;
94 }
95
96 public void setQueryString(String queryString) {
97 _queryString = queryString;
98 }
99
100 public void setWidth(String width) {
101 _width = width;
102 }
103
104 protected String getDefaultPage() {
105 return _PAGE;
106 }
107
108 private static final String _PAGE = "/html/taglib/portlet/preview/page.jsp";
109
110 private String _portletName;
111 private String _queryString;
112 private String _width;
113
114 }