Tenho visto em fóruns pessoas com dificuldade em obter os objetos HttpServletRequest e HttpServletResponse utilizando o Struts2. A action do Struts2 é um POJO e não possui acoplamento e dependência com os objetos dos containers. Mas o framework disponibiliza algumas classes que fornecem esses objetos. A classe ServletActionContext é uma delas, então vamos aos códigos.

Código:

//imports e definição da classe

HttpServletRequest request = ServletActionContext.getRequest(); //obtendo o objeto HttpServletRequest

HttpServletResponse response = ServletActionContext.getResponse(); //obtendo o objeto HttpServletResponse

O Struts2 disponiliza ainda outras formas de obter alguns objetos comuns da especificação Servlet, como a classe ActionContext, que fornece métodos que retornam o contexto da aplicação, mapa da sessão, etc.

Até a próxima!