Your action can implement ServletRequestAware interface to get access to the request object. But I'm afraid the request object will be injected after your constructor runs. Why do you need the request object in the constructor??
Struts 2 actions are not reused, so whatever you want to do in the constructor you can also do in your execute (or whatever named) method...