org.apache.struts2.jasper.compiler

## Class ServletWriter

- java.lang.Object
- - org.apache.struts2.jasper.compiler.ServletWriter

-     public class ServletWriter
      extends Object

  This is what is used to generate servlets.
  Author:
    Anil K. Vijendran, Kin-man Chung

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `SPACES`
    `static int` | `TAB_WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ServletWriter(PrintWriter writer)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()`
    `int` | `getJavaLine()`
    `void` | `popIndent()`
    `void` | `print(char c)` Prints the given char.
    `void` | `print(int i)` Prints the given int.
    `void` | `print(String s)` Prints the given string.
    `void` | `printComment(org.apache.struts2.jasper.compiler.Mark start, org.apache.struts2.jasper.compiler.Mark stop, char[] chars)` Print a standard comment for echo outputed chunk.
    `void` | `printil(String s)` Prints the current indention, and then the string, and a '\n'.
    `void` | `printin()` Prints the current indention
    `void` | `printin(String s)` Prints the current indention, followed by the given string
    `void` | `println()` Prints a '\n'
    `void` | `println(String s)` Prints the given string followed by '\n'
    `void` | `printMultiLn(String s)` Prints the given string.
    `void` | `pushIndent()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### TAB_WIDTH

          public static int TAB_WIDTH

    - #### SPACES

          public static String SPACES

  - ### Constructor Detail

    - #### ServletWriter

          public ServletWriter(PrintWriter writer)

  - ### Method Detail

    - #### close

          public void close()
                     throws IOException

      Throws:
        `IOException`

    - #### getJavaLine

          public int getJavaLine()

    - #### pushIndent

          public void pushIndent()

    - #### popIndent

          public void popIndent()

    - #### printComment

          public void printComment(org.apache.struts2.jasper.compiler.Mark start,
                                   org.apache.struts2.jasper.compiler.Mark stop,
                                   char[] chars)

      Print a standard comment for echo outputed chunk.
      Parameters:
        `start` - The starting position of the JSP chunk being processed.
        `stop` - The ending position of the JSP chunk being processed.
        `chars` - characters as array

    - #### println

          public void println(String s)

      Prints the given string followed by '\n'
      Parameters:
        `s` - string to print

    - #### println

          public void println()

      Prints a '\n'

    - #### printin

          public void printin()

      Prints the current indention

    - #### printin

          public void printin(String s)

      Prints the current indention, followed by the given string
      Parameters:
        `s` - string to print

    - #### printil

          public void printil(String s)

      Prints the current indention, and then the string, and a '\n'.
      Parameters:
        `s` - string to print

    - #### print

          public void print(char c)

      Prints the given char.

      Use println() to print a '\n'.
      Parameters:
        `c` - char to print

    - #### print

          public void print(int i)

      Prints the given int.
      Parameters:
        `i` - int to print

    - #### print

          public void print(String s)

      Prints the given string.

      The string must not contain any '\n', otherwise the line count will be off.

      Parameters:
        `s` - string to print

    - #### printMultiLn

          public void printMultiLn(String s)

      Prints the given string.

      If the string spans multiple lines, the line count will be adjusted accordingly.

      Parameters:
        `s` - string to print

Copyright © 2000–2026 Apache Software Foundation. All rights reserved.