View Javadoc

1   /*
2    * Copyright 2003,2004 The Apache Software Foundation.
3    * 
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    * 
8    *      http://www.apache.org/licenses/LICENSE-2.0
9    * 
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  /* 
17  
18   */
19  
20  package org.apache.pluto.tags;
21  
22  import javax.portlet.RenderResponse;
23  import javax.servlet.jsp.JspException;
24  import javax.servlet.jsp.JspWriter;
25  import javax.servlet.jsp.tagext.TagSupport;
26  import java.io.IOException;
27  
28  /***
29   * This tag produces a unique value for the current portlet.
30   *
31   *
32   * Supporting class for the <CODE>namespace</CODE> tag.
33   * writes a unique value for the current portlet
34   * <BR>This tag has no attributes
35   */
36  public class NamespaceTag extends TagSupport
37  {
38  
39      /* (non-Javadoc)
40       * @see javax.servlet.jsp.tagext.Tag#doStartTag()
41       */
42      public int doStartTag() throws JspException {
43          RenderResponse renderResponse = (RenderResponse)
44                  pageContext.getRequest().getAttribute("javax.portlet.response");
45          String namespace = renderResponse.getNamespace();
46          JspWriter writer = pageContext.getOut();
47          try
48          {
49              writer.print(namespace);
50          }
51          catch (IOException ioe)
52          {
53              throw new JspException("Error writing namespace", ioe);
54          }
55          return SKIP_BODY;
56      }
57  }