XWork2 is designed around the concept of GOF's Command Design Pattern.

Command Design Pattern

General

A Command design pattern, abstract the logic of a particular execution into an object, the command object. If an originator is to interact with a receiver using a command pattern, direct reference between them could be abstracted away. Originator would probably create a command object, that when executed will know how to get its receiver and perform the necessary logics. There could be a variety of command that being able to communicate with a variety of receivers, most probably created through some sort of Factory pattern.

Relation with XWork2

Command in XWork2 sense would be XWork2 Action, while the originator would most possibly translate to the client that grab hold of a copy of XWork2 Action. A receiver will most likely be XWork2 Result. XWork2 enhance the concept a bit with the introduction of ActionProxy, a thin layer representing the action such that action could be loaded differently and ActionInvocation which details the actual execution of the action itself.

Architecture