HttpServletContext in Struts 2 Action Class

SHARE & COMMENT :

There are two ways to get the servlet context object inside struts 2 action class’s execute method.

  • ServletActionContext : Directly accessing the getContext method from the ServletActionContext class will return the context object.
  • ServletContextAware : If you implement the action class with ServletContextAware interface, then struts controller will send the context object through setServletContext method. You are requested to declare a variable for context object and write getter and setter methods.

1. ServletActionContext

import javax.servlet.http.HttpServletContext;
import org.apache.struts2.ServletActionContext;

public class Struts2HelloWorldAction{
	public String execute() {
		HttpServletContext context = ServletActionContext.getContext();
		return "SUCCESS";
	}
}

2. ServletContextAware

import javax.servlet.http.HttpServletContext;
import org.apache.struts2.interceptor.ServletContextAware;

public class Struts2HelloWorldAction implements ServletContextAware{

	HttpServletContext context;

	public String execute() {
		return "SUCCESS";

	}

	public void setServletContext(HttpServletContext context) {
		this.context = context;
	}

}

However, it is recommended to use ServletContextAware instead of ServletActionContext method.

Comments

comments

About Krishna Srinivasan

He is Founder and Chief Editor of JavaBeat. He has more than 8+ years of experience on developing Web applications. He writes about Spring, DOJO, JSF, Hibernate and many other emerging technologies in this blog.

Speak Your Mind

*

Close
Please support the site
By clicking any of these buttons you help our site to get better