# Hierarchy For All Packages

Package Hierarchies:

- org.apache.struts2.components,
- org.apache.struts2.portlet,
- org.apache.struts2.portlet.action,
- org.apache.struts2.portlet.context,
- org.apache.struts2.portlet.dispatcher,
- org.apache.struts2.portlet.interceptor,
- org.apache.struts2.portlet.result,
- org.apache.struts2.portlet.servlet,
- org.apache.struts2.portlet.util,
- org.apache.struts2.views.freemarker

## Class Hierarchy

- java.lang.Object
  - org.apache.struts2.interceptor.AbstractInterceptor (implements org.apache.struts2.interceptor.ConditionalInterceptor)
    - com.opensymphony.xwork2.interceptor.AbstractInterceptor (implements com.opensymphony.xwork2.interceptor.ConditionalInterceptor)
      - org.apache.struts2.portlet.interceptor.PortletAwareInterceptor (implements org.apache.struts2.StrutsStatics)
      - org.apache.struts2.portlet.interceptor.PortletStateInterceptor
  - java.util.AbstractMap<K,V> (implements java.util.Map<K,V>)
    - org.apache.struts2.portlet.PortletApplicationMap (implements java.io.Serializable)
    - org.apache.struts2.portlet.PortletRequestMap
    - org.apache.struts2.portlet.PortletSessionMap
  - org.apache.struts2.portlet.dispatcher.DirectRenderFromEventAction (implements com.opensymphony.xwork2.Action, java.io.Serializable, org.apache.struts2.action.SessionAware)
  - javax.portlet.GenericPortlet (implements javax.portlet.EventPortlet, javax.portlet.Portlet, javax.portlet.PortletConfig, javax.portlet.ResourceServingPortlet)
    - org.apache.struts2.portlet.dispatcher.Jsr168Dispatcher (implements org.apache.struts2.StrutsStatics)
      - org.apache.struts2.portlet.dispatcher.Jsr286Dispatcher
  - javax.servlet.GenericServlet (implements java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig)
    - javax.servlet.http.HttpServlet
      - org.apache.struts2.portlet.dispatcher.DispatcherServlet
  - java.io.InputStream (implements java.io.Closeable)
    - javax.servlet.ServletInputStream
      - org.apache.struts2.portlet.servlet.PortletServletInputStream
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - javax.servlet.ServletOutputStream
      - org.apache.struts2.portlet.servlet.PortletServletOutputStream
  - org.apache.struts2.portlet.context.PortletActionContext
  - org.apache.struts2.portlet.PortletConstants
  - org.apache.struts2.portlet.servlet.PortletHttpSession (implements javax.servlet.http.HttpSession)
  - org.apache.struts2.portlet.interceptor.PortletPrincipalProxy (implements org.apache.struts2.interceptor.PrincipalProxy)
  - org.apache.struts2.portlet.result.PortletResultHelperJSR168 (implements org.apache.struts2.portlet.result.PortletResultHelper)
  - org.apache.struts2.portlet.result.PortletResultHelperJSR286 (implements org.apache.struts2.portlet.result.PortletResultHelper)
  - org.apache.struts2.portlet.servlet.PortletServletConfig (implements javax.servlet.ServletConfig)
  - org.apache.struts2.portlet.servlet.PortletServletContext (implements javax.servlet.ServletContext)
  - org.apache.struts2.portlet.servlet.PortletServletRequest (implements javax.servlet.http.HttpServletRequest)
  - org.apache.struts2.portlet.servlet.PortletServletRequestDispatcher (implements javax.servlet.RequestDispatcher)
  - org.apache.struts2.portlet.servlet.PortletServletResponse (implements javax.servlet.http.HttpServletResponse)
    - org.apache.struts2.portlet.servlet.PortletServletResponseJSR286
  - org.apache.struts2.portlet.util.PortletUrlHelper
    - org.apache.struts2.portlet.util.PortletUrlHelperJSR286
  - org.apache.struts2.components.PortletUrlRenderer (implements org.apache.struts2.components.UrlRenderer)
  - org.apache.struts2.portlet.interceptor.ServletPortletPreferences (implements javax.portlet.PortletPreferences)
  - org.apache.struts2.result.StrutsResultSupport (implements com.opensymphony.xwork2.Result, org.apache.struts2.StrutsStatics)
    - org.apache.struts2.views.freemarker.PortletFreemarkerResult
    - org.apache.struts2.portlet.result.PortletResult
      - org.apache.struts2.portlet.result.PortletActionRedirectResult
    - org.apache.struts2.portlet.result.PortletVelocityResult

## Interface Hierarchy

- org.apache.struts2.portlet.action.PortletContextAware
  - org.apache.struts2.portlet.interceptor.PortletContextAware
- org.apache.struts2.portlet.action.PortletPreferencesAware
  - org.apache.struts2.portlet.interceptor.PortletPreferencesAware
- org.apache.struts2.portlet.action.PortletRequestAware
  - org.apache.struts2.portlet.interceptor.PortletRequestAware
- org.apache.struts2.portlet.action.PortletResponseAware
  - org.apache.struts2.portlet.interceptor.PortletResponseAware
- org.apache.struts2.portlet.result.PortletResultHelper

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.apache.struts2.portlet.PortletPhase

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