Action is not thread safe as only one instance of an action object is created and all the requests access it.
ActionForm itself is not thread safe reason being when it is stored as an attribute in session, multiple requests can manipulate its values.
ActionServlet is a servlet which is not thread safe.
ActionMapping object should be thread safe, reason being it is initialized only at the time of struts-configuration initialization (at the load time of ActionServlet). After that the configuration is frozen.