1
19
20 package com.liferay.taglib.ui;
21
22 import com.liferay.portal.kernel.log.Log;
23 import com.liferay.portal.kernel.log.LogFactoryUtil;
24 import com.liferay.portal.kernel.util.MethodInvoker;
25 import com.liferay.portal.kernel.util.MethodWrapper;
26 import com.liferay.portal.kernel.util.PortalClassLoaderUtil;
27 import com.liferay.portal.kernel.util.StringPool;
28
29 import javax.servlet.jsp.JspException;
30 import javax.servlet.jsp.PageContext;
31 import javax.servlet.jsp.tagext.TagSupport;
32
33
40 public class InputPermissionsParamsTag extends TagSupport {
41
42 public static String doTag(
43 String modelName, PageContext pageContext)
44 throws Exception {
45
46 Object returnObj = null;
47
48 Thread currentThread = Thread.currentThread();
49
50 ClassLoader contextClassLoader = currentThread.getContextClassLoader();
51
52 try {
53 currentThread.setContextClassLoader(
54 PortalClassLoaderUtil.getClassLoader());
55
56 MethodWrapper methodWrapper = new MethodWrapper(
57 _TAG_CLASS, _TAG_DO_END_METHOD,
58 new Object[] {modelName, pageContext}
59 );
60
61 returnObj = MethodInvoker.invoke(methodWrapper);
62 }
63 catch (Exception e) {
64 _log.error(e, e);
65 }
66 finally {
67 currentThread.setContextClassLoader(contextClassLoader);
68 }
69
70 if (returnObj != null) {
71 return returnObj.toString();
72 }
73 else {
74 return StringPool.BLANK;
75 }
76 }
77
78 public int doEndTag() throws JspException {
79 try {
80 doTag(_modelName, pageContext);
81 }
82 catch (Exception e) {
83 if (e instanceof JspException) {
84 throw (JspException)e;
85 }
86 else {
87 throw new JspException(e);
88 }
89 }
90
91 return EVAL_PAGE;
92 }
93
94 public void setModelName(String modelName) {
95 _modelName = modelName;
96 }
97
98 private static final String _TAG_CLASS =
99 "com.liferay.portal.servlet.taglib.ui.InputPermissionsParamsTagUtil";
100
101 private static final String _TAG_DO_END_METHOD = "doEndTag";
102
103 private static Log _log = LogFactoryUtil.getLog(
104 InputPermissionsParamsTag.class);
105
106 private String _modelName;
107
108 }