dgraham     2003/07/30 17:19:04

  Modified:    src/share/org/apache/struts/taglib/html SubmitTag.java
                        CancelTag.java CheckboxTag.java ResetTag.java
                        ButtonTag.java RadioTag.java HtmlTag.java
                        MessagesTag.java OptionTag.java ImageTag.java
                        LinkTag.java ImgTag.java SelectTag.java
                        MultiboxTag.java OptionsTag.java
               src/share/org/apache/struts/taglib/nested NestedRootTag.java
                        NestedPropertyTag.java
               src/share/org/apache/struts/util ResponseUtils.java
               src/share/org/apache/struts/taglib/logic IterateTag.java
               src/share/org/apache/struts/taglib TagUtils.java
  Log:
  Moved ResponseUtils methods to TagUtils.
  
  Revision  Changes    Path
  1.18      +7 -11     
jakarta-struts/src/share/org/apache/struts/taglib/html/SubmitTag.java
  
  Index: SubmitTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/SubmitTag.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- SubmitTag.java    19 Mar 2003 18:29:54 -0000      1.17
  +++ SubmitTag.java    31 Jul 2003 00:19:04 -0000      1.18
  @@ -59,13 +59,12 @@
    *
    */
   
  -
   package org.apache.struts.taglib.html;
   
  -
   import javax.servlet.jsp.JspException;
  +
  +import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Tag for input fields of type "submit".
  @@ -73,7 +72,6 @@
    * @author Craig R. McClanahan
    * @version $Revision$ $Date$
    */
  -
   public class SubmitTag extends BaseHandlerTag {
   
   
  @@ -236,10 +234,8 @@
           results.append(prepareStyles());
           results.append(getElementClose());
   
  -        // Render this element to our writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
  -        // Evaluate the remainder of this page
           return (EVAL_PAGE);
   
       }
  
  
  
  1.13      +8 -7      
jakarta-struts/src/share/org/apache/struts/taglib/html/CancelTag.java
  
  Index: CancelTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/CancelTag.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- CancelTag.java    22 Dec 2002 04:55:30 -0000      1.12
  +++ CancelTag.java    31 Jul 2003 00:19:04 -0000      1.13
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -64,8 +64,9 @@
   
   
   import javax.servlet.jsp.JspException;
  +
  +import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   
   /**
  @@ -219,7 +220,7 @@
           results.append(getElementClose());
   
           // Render this element to our writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
           // Evaluate the remainder of this page
           return (EVAL_PAGE);
  
  
  
  1.19      +40 -45    
jakarta-struts/src/share/org/apache/struts/taglib/html/CheckboxTag.java
  
  Index: CheckboxTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/CheckboxTag.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- CheckboxTag.java  26 Jul 2003 17:22:27 -0000      1.18
  +++ CheckboxTag.java  31 Jul 2003 00:19:04 -0000      1.19
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -59,16 +59,12 @@
    *
    */
   
  -
   package org.apache.struts.taglib.html;
   
  -
   import javax.servlet.jsp.JspException;
  -import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.RequestUtils;
  -import org.apache.struts.util.ResponseUtils;
  -import org.apache.struts.taglib.TagUtils;
   
  +import org.apache.struts.taglib.TagUtils;
  +import org.apache.struts.util.MessageResources;
   
   /**
    * Tag for input fields of type "checkbox".
  @@ -76,19 +72,15 @@
    * @author Craig R. McClanahan
    * @version $Revision$ $Date$
    */
  -
   public class CheckboxTag extends BaseHandlerTag {
   
  -
       // ----------------------------------------------------- Instance Variables
   
  -
       /**
        * The message resources for this package.
        */
       protected static MessageResources messages =
  -     MessageResources.getMessageResources(Constants.Package + ".LocalStrings");
  -
  +        MessageResources.getMessageResources(Constants.Package + ".LocalStrings");
   
       /**
        * The name of the bean containing our underlying property.
  @@ -103,28 +95,23 @@
           this.name = name;
       }
   
  -
       /**
        * The property name for this field.
        */
       protected String property = null;
   
  -
       /**
        * The body content of this tag (if any).
        */
       protected String text = null;
   
  -
       /**
        * The server value for this option.
        */
       protected String value = null;
   
  -
       // ------------------------------------------------------------- Properties
   
  -
       /**
        * Return the property name.
        */
  @@ -134,7 +121,6 @@
   
       }
   
  -
       /**
        * Set the property name.
        *
  @@ -146,7 +132,6 @@
   
       }
   
  -
       /**
        * Return the server value.
        */
  @@ -156,7 +141,6 @@
   
       }
   
  -
       /**
        * Set the server value.
        *
  @@ -168,10 +152,8 @@
   
       }
   
  -
       // --------------------------------------------------------- Public Methods
   
  -
       /**
        * Generate the required input tag.
        * <p>
  @@ -184,9 +166,11 @@
           // Create an appropriate "input" element based on our parameters
           StringBuffer results = new StringBuffer("<input type=\"checkbox\"");
           results.append(" name=\"");
  -        // * @since Struts 1.1
  -        if( indexed )
  -                prepareIndex( results, name );
  +
  +        if (indexed) {
  +            prepareIndex(results, name);
  +        }
  +
           results.append(this.property);
           results.append("\"");
           if (accesskey != null) {
  @@ -194,35 +178,49 @@
               results.append(accesskey);
               results.append("\"");
           }
  +
           if (tabindex != null) {
               results.append(" tabindex=\"");
               results.append(tabindex);
               results.append("\"");
           }
  +
           results.append(" value=\"");
  -        if (value == null)
  +
  +        if (value == null) {
               results.append("on");
  -        else
  +        } else {
               results.append(value);
  +        }
  +
           results.append("\"");
  -        Object result = TagUtils.getInstance().lookup(pageContext, name,
  -                                            property, null);
  -        if (result == null)
  +
  +        Object result =
  +            TagUtils.getInstance().lookup(pageContext, name, property, null);
  +
  +        if (result == null) {
               result = "";
  -        if (!(result instanceof String))
  +        }
  +
  +        if (!(result instanceof String)) {
               result = result.toString();
  +        }
  +
           String checked = (String) result;
           if (checked.equalsIgnoreCase(value)
               || checked.equalsIgnoreCase("true")
               || checked.equalsIgnoreCase("yes")
  -            || checked.equalsIgnoreCase("on"))
  +            || checked.equalsIgnoreCase("on")) {
  +
               results.append(" checked=\"checked\"");
  +        }
  +
           results.append(prepareEventHandlers());
           results.append(prepareStyles());
           results.append(getElementClose());
   
           // Print this field to our output writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
           // Continue processing this page
           this.text = null;
  @@ -230,8 +228,6 @@
   
       }
   
  -
  -
       /**
        * Save the associated label from the body content.
        *
  @@ -241,14 +237,14 @@
   
           if (bodyContent != null) {
               String value = bodyContent.getString().trim();
  -            if (value.length() > 0)
  +            if (value.length() > 0) {
                   text = value;
  +            }
           }
           return (SKIP_BODY);
   
       }
   
  -
       /**
        * Process the remainder of this page normally.
        *
  @@ -257,15 +253,15 @@
       public int doEndTag() throws JspException {
   
           // Render any description for this checkbox
  -        if (text != null)
  -            ResponseUtils.write(pageContext, text);
  +        if (text != null) {
  +            TagUtils.getInstance().write(pageContext, text);
  +        }
   
           // Evaluate the remainder of this page
           return (EVAL_PAGE);
   
       }
   
  -
       /**
        * Release any acquired resources.
        */
  @@ -278,6 +274,5 @@
           value = null;
   
       }
  -
   
   }
  
  
  
  1.14      +7 -6      
jakarta-struts/src/share/org/apache/struts/taglib/html/ResetTag.java
  
  Index: ResetTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ResetTag.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- ResetTag.java     18 May 2003 19:06:14 -0000      1.13
  +++ ResetTag.java     31 Jul 2003 00:19:04 -0000      1.14
  @@ -62,8 +62,9 @@
   package org.apache.struts.taglib.html;
   
   import javax.servlet.jsp.JspException;
  +
  +import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Tag for input fields of type "reset".
  @@ -178,7 +179,7 @@
        */
       public int doEndTag() throws JspException {
   
  -        ResponseUtils.write(pageContext, renderResetElement(label()));
  +        TagUtils.getInstance().write(pageContext, renderResetElement(label()));
   
           return (EVAL_PAGE);
       }
  
  
  
  1.15      +7 -10     
jakarta-struts/src/share/org/apache/struts/taglib/html/ButtonTag.java
  
  Index: ButtonTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ButtonTag.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- ButtonTag.java    16 Nov 2002 06:05:21 -0000      1.14
  +++ ButtonTag.java    31 Jul 2003 00:19:04 -0000      1.15
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -59,13 +59,11 @@
    *
    */
   
  -
   package org.apache.struts.taglib.html;
   
  -
   import javax.servlet.jsp.JspException;
  -import org.apache.struts.util.ResponseUtils;
   
  +import org.apache.struts.taglib.TagUtils;
   
   /**
    * Renders an HTML BUTTON tag within the Struts framework.
  @@ -73,7 +71,6 @@
    * @author Don Clasen
    * @version $Revision$ $Date$
    */
  -
   public class ButtonTag extends BaseHandlerTag {
   
   
  @@ -210,7 +207,7 @@
           results.append(getElementClose());
   
           // Render this element to our writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
           // Evaluate the remainder of this page
           return (EVAL_PAGE);
  
  
  
  1.24      +7 -7      
jakarta-struts/src/share/org/apache/struts/taglib/html/RadioTag.java
  
  Index: RadioTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/RadioTag.java,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- RadioTag.java     18 May 2003 18:57:13 -0000      1.23
  +++ RadioTag.java     31 Jul 2003 00:19:04 -0000      1.24
  @@ -63,8 +63,8 @@
   
   import javax.servlet.jsp.JspException;
   
  +import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Tag for input fields of type "radio".
  @@ -211,7 +211,7 @@
   
           String radioTag = renderRadioElement(serverValue(), currentValue());
   
  -        ResponseUtils.write(pageContext, radioTag);
  +        TagUtils.getInstance().write(pageContext, radioTag);
   
           this.text = null;
           return (EVAL_BODY_TAG);
  @@ -315,7 +315,7 @@
   
           // Render any description for this radio button
           if (this.text != null) {
  -            ResponseUtils.write(pageContext, text);
  +            TagUtils.getInstance().write(pageContext, text);
           }
           
           return (EVAL_PAGE);
  
  
  
  1.17      +6 -7      
jakarta-struts/src/share/org/apache/struts/taglib/html/HtmlTag.java
  
  Index: HtmlTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/HtmlTag.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- HtmlTag.java      26 Jul 2003 01:17:55 -0000      1.16
  +++ HtmlTag.java      31 Jul 2003 00:19:04 -0000      1.17
  @@ -72,7 +72,6 @@
   import org.apache.struts.Globals;
   import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Renders an HTML <html> element with appropriate language attributes if
  @@ -157,7 +156,7 @@
        */
       public int doStartTag() throws JspException {
   
  -        ResponseUtils.write(this.pageContext, this.renderHtmlStartElement());
  +        TagUtils.getInstance().write(this.pageContext, 
this.renderHtmlStartElement());
   
           return EVAL_BODY_INCLUDE;
       }
  @@ -228,7 +227,7 @@
        */
       public int doEndTag() throws JspException {
   
  -        ResponseUtils.write(pageContext, "</html>");
  +        TagUtils.getInstance().write(pageContext, "</html>");
   
           // Evaluate the remainder of this page
           return (EVAL_PAGE);
  
  
  
  1.20      +7 -8      
jakarta-struts/src/share/org/apache/struts/taglib/html/MessagesTag.java
  
  Index: MessagesTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/MessagesTag.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- MessagesTag.java  30 Jul 2003 23:55:50 -0000      1.19
  +++ MessagesTag.java  31 Jul 2003 00:19:04 -0000      1.20
  @@ -72,7 +72,6 @@
   import org.apache.struts.action.ActionMessages;
   import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Custom tag that iterates the elements of a message collection.
  @@ -279,7 +278,7 @@
                   TagUtils.getInstance().message(pageContext, bundle, locale, header);
                   
               if (headerMessage != null) {
  -                ResponseUtils.write(pageContext, headerMessage);
  +                TagUtils.getInstance().write(pageContext, headerMessage);
               }
           }
   
  @@ -299,7 +298,7 @@
       public int doAfterBody() throws JspException {
           // Render the output from this iteration to the output stream
           if (bodyContent != null) {
  -            ResponseUtils.writePrevious(pageContext, bodyContent.getString());
  +            TagUtils.getInstance().writePrevious(pageContext, 
bodyContent.getString());
               bodyContent.clearBody();
           }
   
  @@ -336,7 +335,7 @@
               TagUtils.getInstance().message(pageContext, bundle, locale, footer);
               
             if (footerMessage != null) {
  -             ResponseUtils.write(pageContext, footerMessage);
  +             TagUtils.getInstance().write(pageContext, footerMessage);
             }
          }
   
  
  
  
  1.22      +5 -6      
jakarta-struts/src/share/org/apache/struts/taglib/html/OptionTag.java
  
  Index: OptionTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/OptionTag.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- OptionTag.java    27 Jul 2003 07:13:04 -0000      1.21
  +++ OptionTag.java    31 Jul 2003 00:19:04 -0000      1.22
  @@ -69,7 +69,6 @@
   import org.apache.struts.Globals;
   import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Tag for select options.  The body of this tag is presented to the user
  @@ -268,7 +267,7 @@
        */
       public int doEndTag() throws JspException {
   
  -        ResponseUtils.write(pageContext, this.renderOptionElement());
  +        TagUtils.getInstance().write(pageContext, this.renderOptionElement());
   
           return (EVAL_PAGE);
       }
  
  
  
  1.28      +17 -14    
jakarta-struts/src/share/org/apache/struts/taglib/html/ImageTag.java
  
  Index: ImageTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ImageTag.java,v
  retrieving revision 1.27
  retrieving revision 1.28
  diff -u -r1.27 -r1.28
  --- ImageTag.java     27 Jul 2003 07:13:04 -0000      1.27
  +++ ImageTag.java     31 Jul 2003 00:19:04 -0000      1.28
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -70,7 +70,6 @@
   import org.apache.struts.Globals;
   import org.apache.struts.config.ModuleConfig;
   import org.apache.struts.taglib.TagUtils;
  -import org.apache.struts.util.ResponseUtils;
   
   
   /**
  @@ -223,9 +222,10 @@
           if (property != null) {
               results.append(" name=\"");
               results.append(property);
  -            // @since Struts 1.1
  -            if( indexed )
  -                prepareIndex( results, null );
  +
  +            if (indexed) {
  +                prepareIndex(results, null);
  +            }
               results.append("\"");
           }
           
  @@ -264,10 +264,8 @@
           results.append(prepareStyles());
           results.append(getElementClose());
   
  -        // Render this element to our writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
  -        // Evaluate the remainder of this page
           return (EVAL_PAGE);
   
       }
  @@ -309,15 +307,17 @@
                   TagUtils.getInstance().saveException(pageContext, e);
                   throw e;
               }
  +            
               ModuleConfig config = (ModuleConfig)
                   pageContext.getRequest().getAttribute(Globals.MODULE_KEY);
  +            
               HttpServletRequest request =
                   (HttpServletRequest) pageContext.getRequest();
  +            
               if (config == null) {
                   return (request.getContextPath() + this.page);
               } else {
  -                return (request.getContextPath() + config.getPrefix() +
  -                        this.page);
  +                return (request.getContextPath() + config.getPrefix() + this.page);
               }
           }
   
  @@ -329,10 +329,13 @@
                   TagUtils.getInstance().saveException(pageContext, e);
                   throw e;
               }
  +            
               ModuleConfig config = (ModuleConfig)
                   pageContext.getRequest().getAttribute(Globals.MODULE_KEY);
  +            
               HttpServletRequest request =
                   (HttpServletRequest) pageContext.getRequest();
  +            
               if (config == null) {
                   return (
                       request.getContextPath()
  
  
  
  1.31      +15 -20    
jakarta-struts/src/share/org/apache/struts/taglib/html/LinkTag.java
  
  Index: LinkTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/LinkTag.java,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- LinkTag.java      27 Jul 2003 06:30:10 -0000      1.30
  +++ LinkTag.java      31 Jul 2003 00:19:04 -0000      1.31
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -59,19 +59,17 @@
    *
    */
   
  -
   package org.apache.struts.taglib.html;
   
  -
   import java.net.MalformedURLException;
  -import java.util.Map;
   import java.util.HashMap;
  +import java.util.Map;
  +
   import javax.servlet.jsp.JspException;
  -import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.RequestUtils;
  -import org.apache.struts.util.ResponseUtils;
  -import org.apache.struts.taglib.logic.IterateTag;
  +
   import org.apache.struts.taglib.TagUtils;
  +import org.apache.struts.taglib.logic.IterateTag;
  +import org.apache.struts.util.MessageResources;
   
   /**
    * Generate a URL-encoded hyperlink to the specified URI.
  @@ -80,7 +78,6 @@
    * @author James Turner
    * @version $Revision$ $Date$
    */
  -
   public class LinkTag extends BaseHandlerTag {
   
   
  @@ -344,7 +341,7 @@
               StringBuffer results = new StringBuffer("<a name=\"");
               results.append(linkName);
               results.append("\">");
  -            ResponseUtils.write(pageContext, results.toString());
  +            TagUtils.getInstance().write(pageContext, results.toString());
               return (EVAL_BODY_TAG);
           }
   
  @@ -372,8 +369,7 @@
           results.append(prepareEventHandlers());
           results.append(">");
   
  -        // Print this element to our output writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
           // Evaluate the body of this tag
           this.text = null;
  @@ -409,14 +405,13 @@
   
           // Prepare the textual content and ending element of this hyperlink
           StringBuffer results = new StringBuffer();
  -        if (text != null)
  +        if (text != null) {
               results.append(text);
  +        }
           results.append("</a>");
   
  -        // Render the remainder to the output stream
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
  -        // Evaluate the remainder of this page
           return (EVAL_PAGE);
   
       }
  
  
  
  1.31      +7 -10     
jakarta-struts/src/share/org/apache/struts/taglib/html/ImgTag.java
  
  Index: ImgTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/ImgTag.java,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- ImgTag.java       27 Jul 2003 07:13:04 -0000      1.30
  +++ ImgTag.java       31 Jul 2003 00:19:04 -0000      1.31
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -69,11 +69,10 @@
   import javax.servlet.jsp.JspException;
   
   import org.apache.struts.Globals;
  -import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.config.ModuleConfig;
  +import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
   import org.apache.struts.util.RequestUtils;
  -import org.apache.struts.util.ResponseUtils;
   
   /**
    * Generate an IMG tag to the specified image URI.
  @@ -469,10 +468,8 @@
           results.append(prepareEventHandlers());
           results.append(getElementClose());
   
  -        // Print this element to our output writer
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
  -        // Evaluate the reaminder of this page
           return (EVAL_PAGE);
   
       }
  
  
  
  1.18      +9 -8      
jakarta-struts/src/share/org/apache/struts/taglib/html/SelectTag.java
  
  Index: SelectTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/SelectTag.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- SelectTag.java    27 Jul 2003 07:13:04 -0000      1.17
  +++ SelectTag.java    31 Jul 2003 00:19:04 -0000      1.18
  @@ -62,11 +62,12 @@
   package org.apache.struts.taglib.html;
   
   import java.lang.reflect.InvocationTargetException;
  +
   import javax.servlet.jsp.JspException;
  +
   import org.apache.commons.beanutils.BeanUtils;
  -import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   import org.apache.struts.taglib.TagUtils;
  +import org.apache.struts.util.MessageResources;
   
   /**
    * Custom tag that represents an HTML select element, associated with a
  @@ -236,7 +237,7 @@
        */
       public int doStartTag() throws JspException {
   
  -        ResponseUtils.write(pageContext, renderSelectStartElement());
  +        TagUtils.getInstance().write(pageContext, renderSelectStartElement());
   
           // Store this tag itself as a page attribute
           pageContext.setAttribute(Constants.SELECT_KEY, this);
  @@ -369,7 +370,7 @@
           }
           results.append("</select>");
   
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
           return (EVAL_PAGE);
       }
  
  
  
  1.20      +6 -9      
jakarta-struts/src/share/org/apache/struts/taglib/html/MultiboxTag.java
  
  Index: MultiboxTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/MultiboxTag.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- MultiboxTag.java  26 Jul 2003 17:22:27 -0000      1.19
  +++ MultiboxTag.java  31 Jul 2003 00:19:04 -0000      1.20
  @@ -7,7 +7,7 @@
    *
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  + * Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -70,7 +70,6 @@
   import org.apache.struts.Globals;
   import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.RequestUtils;
   import org.apache.struts.util.ResponseUtils;
   
   /**
  @@ -257,10 +256,8 @@
           results.append(prepareStyles());
           results.append(getElementClose());
   
  -        // Render this element to our response
  -        ResponseUtils.write(pageContext, results.toString());
  +        TagUtils.getInstance().write(pageContext, results.toString());
   
  -        // Continue evaluating this page
           return (EVAL_PAGE);
   
       }
  
  
  
  1.24      +5 -8      
jakarta-struts/src/share/org/apache/struts/taglib/html/OptionsTag.java
  
  Index: OptionsTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/OptionsTag.java,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- OptionsTag.java   26 Jul 2003 17:22:27 -0000      1.23
  +++ OptionsTag.java   31 Jul 2003 00:19:04 -0000      1.24
  @@ -73,10 +73,9 @@
   
   import org.apache.commons.beanutils.PropertyUtils;
   import org.apache.commons.collections.IteratorUtils;
  +import org.apache.struts.taglib.TagUtils;
   import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.RequestUtils;
   import org.apache.struts.util.ResponseUtils;
  -import org.apache.struts.taglib.TagUtils;
   
   /**
    * Tag for creating multiple &lt;select&gt; options from a collection.  The
  @@ -314,10 +313,8 @@
               }
           }
   
  -        // Render this element to our writer
  -        ResponseUtils.write(pageContext, sb.toString());
  +        TagUtils.getInstance().write(pageContext, sb.toString());
   
  -        // Evaluate the remainder of this page
           return EVAL_PAGE;
   
       }
  
  
  
  1.9       +6 -6      
jakarta-struts/src/share/org/apache/struts/taglib/nested/NestedRootTag.java
  
  Index: NestedRootTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/nested/NestedRootTag.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- NestedRootTag.java        6 Mar 2003 16:07:13 -0000       1.8
  +++ NestedRootTag.java        31 Jul 2003 00:19:04 -0000      1.9
  @@ -63,7 +63,7 @@
   import javax.servlet.jsp.JspException;
   import javax.servlet.jsp.tagext.BodyTagSupport;
   
  -import org.apache.struts.util.ResponseUtils;
  +import org.apache.struts.taglib.TagUtils;
   
   /**
    * NestedRootTag.
  @@ -143,7 +143,7 @@
     public int doAfterBody() throws JspException {
       /* Render the output */
       if (bodyContent != null) {
  -      ResponseUtils.writePrevious(pageContext, bodyContent.getString());
  +      TagUtils.getInstance().writePrevious(pageContext, bodyContent.getString());
         bodyContent.clearBody();
       }
   
  
  
  
  1.9       +6 -6      
jakarta-struts/src/share/org/apache/struts/taglib/nested/NestedPropertyTag.java
  
  Index: NestedPropertyTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/nested/NestedPropertyTag.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- NestedPropertyTag.java    6 Mar 2003 16:07:13 -0000       1.8
  +++ NestedPropertyTag.java    31 Jul 2003 00:19:04 -0000      1.9
  @@ -63,7 +63,7 @@
   import javax.servlet.jsp.JspException;
   import javax.servlet.jsp.tagext.BodyTagSupport;
   
  -import org.apache.struts.util.ResponseUtils;
  +import org.apache.struts.taglib.TagUtils;
   
   /**
    * NestedPropertyTag.
  @@ -131,7 +131,7 @@
   
       /* Render the output */
       if (bodyContent != null) {
  -      ResponseUtils.writePrevious(pageContext, bodyContent.getString());
  +      TagUtils.getInstance().writePrevious(pageContext, bodyContent.getString());
         bodyContent.clearBody();
       }
   
  
  
  
  1.7       +12 -25    
jakarta-struts/src/share/org/apache/struts/util/ResponseUtils.java
  
  Index: ResponseUtils.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/util/ResponseUtils.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ResponseUtils.java        8 Dec 2002 07:12:17 -0000       1.6
  +++ ResponseUtils.java        31 Jul 2003 00:19:04 -0000      1.7
  @@ -63,11 +63,10 @@
   package org.apache.struts.util;
   
   
  -import java.io.IOException;
   import javax.servlet.jsp.JspException;
  -import javax.servlet.jsp.JspWriter;
   import javax.servlet.jsp.PageContext;
  -import javax.servlet.jsp.tagext.BodyContent;
  +
  +import org.apache.struts.taglib.TagUtils;
   
   
   /**
  @@ -148,18 +147,13 @@
        * @param text The text to be written
        *
        * @exception JspException if an input/output error occurs (already saved)
  +     * @deprecated Use TagUtils.write() instead.  This will be 
  +     * removed after Struts 1.2.
        */
       public static void write(PageContext pageContext, String text)
           throws JspException {
   
  -        JspWriter writer = pageContext.getOut();
  -        try {
  -            writer.print(text);
  -        } catch (IOException e) {
  -            RequestUtils.saveException(pageContext, e);
  -            throw new JspException
  -                (messages.getMessage("write.io", e.toString()));
  -        }
  +        TagUtils.getInstance().write(pageContext, text);
   
       }
   
  @@ -172,20 +166,13 @@
        * @param text The text to be written
        *
        * @exception JspException if an input/output error occurs (already saved)
  +     * @deprecated Use TagUtils.writePrevious() instead.  This will be 
  +     * removed after Struts 1.2.
        */
       public static void writePrevious(PageContext pageContext, String text)
           throws JspException {
   
  -        JspWriter writer = pageContext.getOut();
  -        if (writer instanceof BodyContent)
  -            writer = ((BodyContent) writer).getEnclosingWriter();
  -        try {
  -            writer.print(text);
  -        } catch (IOException e) {
  -            RequestUtils.saveException(pageContext, e);
  -            throw new JspException
  -                (messages.getMessage("write.io", e.toString()));
  -        }
  +        TagUtils.getInstance().writePrevious(pageContext, text);
   
       }
   
  
  
  
  1.24      +6 -7      
jakarta-struts/src/share/org/apache/struts/taglib/logic/IterateTag.java
  
  Index: IterateTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/logic/IterateTag.java,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- IterateTag.java   27 Jul 2003 07:13:05 -0000      1.23
  +++ IterateTag.java   31 Jul 2003 00:19:04 -0000      1.24
  @@ -73,9 +73,8 @@
   import javax.servlet.jsp.tagext.BodyTagSupport;
   
   import org.apache.commons.collections.IteratorUtils;
  -import org.apache.struts.util.MessageResources;
  -import org.apache.struts.util.ResponseUtils;
   import org.apache.struts.taglib.TagUtils;
  +import org.apache.struts.util.MessageResources;
   
   /**
    * Custom tag that iterates the elements of a collection, which can be
  @@ -388,7 +387,7 @@
   
           // Render the output from this iteration to the output stream
           if (bodyContent != null) {
  -            ResponseUtils.writePrevious(pageContext, bodyContent.getString());
  +            TagUtils.getInstance().writePrevious(pageContext, 
bodyContent.getString());
               bodyContent.clearBody();
           }
   
  
  
  
  1.16      +64 -4     jakarta-struts/src/share/org/apache/struts/taglib/TagUtils.java
  
  Index: TagUtils.java
  ===================================================================
  RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/TagUtils.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- TagUtils.java     30 Jul 2003 23:55:50 -0000      1.15
  +++ TagUtils.java     31 Jul 2003 00:19:04 -0000      1.16
  @@ -61,6 +61,7 @@
   
   package org.apache.struts.taglib;
   
  +import java.io.IOException;
   import java.lang.reflect.InvocationTargetException;
   import java.net.MalformedURLException;
   import java.util.HashMap;
  @@ -72,7 +73,9 @@
   import javax.servlet.http.HttpServletResponse;
   import javax.servlet.http.HttpSession;
   import javax.servlet.jsp.JspException;
  +import javax.servlet.jsp.JspWriter;
   import javax.servlet.jsp.PageContext;
  +import javax.servlet.jsp.tagext.BodyContent;
   
   import org.apache.commons.beanutils.PropertyUtils;
   import org.apache.commons.logging.Log;
  @@ -1018,6 +1021,63 @@
               Globals.EXCEPTION_KEY,
               exception,
               PageContext.REQUEST_SCOPE);
  +
  +    }
  +    
  +    /**
  +     * Write the specified text as the response to the writer associated with
  +     * this page.  <strong>WARNING</strong> - If you are writing body content
  +     * from the <code>doAfterBody()</code> method of a custom tag class that
  +     * implements <code>BodyTag</code>, you should be calling
  +     * <code>writePrevious()</code> instead.
  +     *
  +     * @param pageContext The PageContext object for this page
  +     * @param text The text to be written
  +     *
  +     * @exception JspException if an input/output error occurs (already saved)
  +     */
  +    public void write(PageContext pageContext, String text)
  +        throws JspException {
  +
  +        JspWriter writer = pageContext.getOut();
  +        
  +        try {
  +            writer.print(text);
  +            
  +        } catch (IOException e) {
  +            TagUtils.getInstance().saveException(pageContext, e);
  +            throw new JspException
  +                (messages.getMessage("write.io", e.toString()));
  +        }
  +
  +    }
  +
  +
  +    /**
  +     * Write the specified text as the response to the writer associated with
  +     * the body content for the tag within which we are currently nested.
  +     *
  +     * @param pageContext The PageContext object for this page
  +     * @param text The text to be written
  +     *
  +     * @exception JspException if an input/output error occurs (already saved)
  +     */
  +    public void writePrevious(PageContext pageContext, String text)
  +        throws JspException {
  +
  +        JspWriter writer = pageContext.getOut();
  +        if (writer instanceof BodyContent){
  +            writer = ((BodyContent) writer).getEnclosingWriter();
  +        }
  +        
  +        try {
  +            writer.print(text);
  +            
  +        } catch (IOException e) {
  +            TagUtils.getInstance().saveException(pageContext, e);
  +            throw new JspException
  +                (messages.getMessage("write.io", e.toString()));
  +        }
   
       }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to