KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > portal > core > servlet > jsp > taglib > ErrorsTag


1 /*****************************************
2  * *
3  * JBoss Portal: The OpenSource Portal *
4  * *
5  * Distributable under LGPL license. *
6  * See terms of license at gnu.org. *
7  * *
8  *****************************************/

9 package org.jboss.portal.core.servlet.jsp.taglib;
10
11 import java.io.IOException JavaDoc;
12 import java.io.Writer JavaDoc;
13 import java.util.Enumeration JavaDoc;
14 import java.util.Locale JavaDoc;
15 import java.util.MissingResourceException JavaDoc;
16 import java.util.ResourceBundle JavaDoc;
17
18 import javax.portlet.PortletConfig;
19 import javax.servlet.jsp.JspException JavaDoc;
20 import javax.servlet.jsp.tagext.TagSupport JavaDoc;
21
22 import org.jboss.portal.core.servlet.jsp.PortalJsp;
23
24 /**
25  * Errors tag. Used to include error messages.
26  * @author <a HREF="theute@jboss.org">Thomas Heute</a>
27  * $Revision: 1.1 $
28  */

29 public class ErrorsTag
30       extends TagSupport JavaDoc
31 {
32
33    public int doStartTag() throws JspException JavaDoc
34    {
35       Enumeration JavaDoc names = pageContext.getRequest().getParameterNames();
36       Writer JavaDoc writer = pageContext.getOut();
37       while (names.hasMoreElements())
38       {
39          String JavaDoc name = (String JavaDoc)names.nextElement();
40          if (name.endsWith("_error"))
41          {
42             print(writer, pageContext.getRequest().getParameter(name));
43          }
44       }
45       return SKIP_BODY;
46    }
47    
48    private void print(Writer JavaDoc writer, String JavaDoc key)
49    {
50       Locale JavaDoc locale = pageContext.getRequest().getLocale();
51       PortletConfig portletConfig = (PortletConfig)pageContext.getRequest().getAttribute("javax.portlet.config");
52       ResourceBundle JavaDoc resourceBundle = portletConfig.getResourceBundle(locale);
53       String JavaDoc translatedValue = key;
54       try
55       {
56          translatedValue = resourceBundle.getString(key);
57       } catch (MissingResourceException JavaDoc e) {
58          PortalJsp.log.error("No such resource key in resource file: " + key);
59       }
60       try
61       {
62          writer.write("<span class=\"portlet-msg-error\">" + translatedValue + "</span><br/>\n");
63        }
64       catch (IOException JavaDoc e)
65       {
66          // TODO Auto-generated catch block
67
e.printStackTrace();
68       }
69    }
70
71 }
72
Popular Tags