org.apache.struts2.components

## Class Include

- java.lang.Object
- - org.apache.struts2.components.Component
  - - org.apache.struts2.components.Include

-     public class Include
      extends Component

  Include a servlet's output (result of servlet or a JSP page).

  Note: Any additional params supplied to the included page are not accessible within the rendered page through the <s:property...> tag since no valuestack will be created. You can, however, access them in a servlet via the HttpServletRequest object or from a JSP page via a scriptlet.

  - value* (String) - jsp page to be included

  Examples

       <-- One: -->
       <s:include value="myJsp.jsp" />

       <-- Two: -->
       <s:include value="myJsp.jsp">
          <s:param name="param1" value="value2" />
          <s:param name="param2" value="value2" />
       </s:include>

       <-- Three: -->
       <s:include value="myJsp.jsp">
          <s:param name="param1">value1</s:param>
          <s:param name="param2">value2</s:param>
       </s:include>

       Example one - do an include myJsp.jsp page
       Example two - do an include to myJsp.jsp page with parameters param1=value1 and param2=value2
       Example three - do an include to myJsp.jsp page with parameters param1=value1 and param2=value2

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `value`

    - ### Fields inherited from class org.apache.struts2.components.Component

      `actionMapper, COMPONENT_STACK, devMode, escapeHtmlBody, parameters, performClearTagStateForTagPoolingServers, stack, standardAttributesMap, throwExceptionOnELFailure`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Include(ValueStack stack, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addParameter(String key, Object value)` Adds the given key and value to this component's own parameter.
    `boolean` | `end(Writer writer, String body)` Callback for the end tag of this component.
    `static String` | `getContextRelativePath(javax.servlet.ServletRequest request, String relativePath)`
    `static void` | `include(String relativePath, Writer writer, javax.servlet.ServletRequest request, javax.servlet.http.HttpServletResponse response, String encoding)` Include a resource in a response.
    `void` | `setDefaultEncoding(String encoding)`
    `void` | `setUseResponseEncoding(String useEncoding)`
    `void` | `setValue(String value)`

    - ### Methods inherited from class org.apache.struts2.components.Component

      `addAllParameters, clearStandardAttributesMap, completeExpression, copyParams, determineActionURL, determineNamespace, end, escapeHtmlBody, fieldError, findAncestor, findString, findString, findValue, findValue, findValue, getAttributes, getComponentStack, getNamespace, getParameters, getPerformClearTagStateForTagPoolingServers, getStack, getStandardAttributes, isAcceptableExpression, isValidTagAttribute, popComponentStack, setActionMapper, setDevMode, setEscapeHtmlBody, setNotExcludedAcceptedPatterns, setPerformClearTagStateForTagPoolingServers, setThrowExceptionsOnELFailure, setUrlHelper, start, stripExpression, toString, usesBody`

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

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

- - ### Field Detail

    - #### value

          protected String value

  - ### Constructor Detail

    - #### Include

          public Include(ValueStack stack,
                         javax.servlet.http.HttpServletRequest req,
                         javax.servlet.http.HttpServletResponse res)

  - ### Method Detail

    - #### setDefaultEncoding

          public void setDefaultEncoding(String encoding)

    - #### setUseResponseEncoding

          public void setUseResponseEncoding(String useEncoding)

    - #### end

          public boolean end(Writer writer,
                             String body)

      Description copied from class: `Component`
      Callback for the end tag of this component. Should the body be evaluated again?
      NOTE: will pop component stack.
      Overrides:
        `end` in class `Component`
      Parameters:
        `writer` - the output writer.
        `body` - the rendered body.
      Returns:
        true if the body should be evaluated again

    - #### setValue

          public void setValue(String value)

    - #### getContextRelativePath

          public static String getContextRelativePath(javax.servlet.ServletRequest request,
                                                      String relativePath)

    - #### addParameter

          public void addParameter(String key,
                                   Object value)

      Description copied from class: `Component`
      Adds the given key and value to this component's own parameter.
      If the provided key is `null` nothing happens. If the provided value is `null` any existing parameter with the given key name is removed.
      Overrides:
        `addParameter` in class `Component`
      Parameters:
        `key` - the key of the new parameter to add.
        `value` - the value associated with the key.

    - #### include

          public static void include(String relativePath,
                                     Writer writer,
                                     javax.servlet.ServletRequest request,
                                     javax.servlet.http.HttpServletResponse response,
                                     String encoding)
                              throws javax.servlet.ServletException,
                                     IOException

      Include a resource in a response.
      Parameters:
        `relativePath` - the relative path of the resource to include; resolves to `getContextRelativePath(javax.servlet.ServletRequest, String)`
        `writer` - the Writer to write output to
        `request` - the current request
        `response` - the response to write to
        `encoding` - the file encoding to use for including the resource; if `null`, it will default to the platform encoding
      Throws:
        `javax.servlet.ServletException` - in case of servlet processing errors
        `IOException` - in case of IO errors

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