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