一个动作执行时self变量是自己,那么称为Self动作。
需要继承xworker.lang.actions.SelfAction模型。
作为Self动作后self变量是动作自己,如果该动作是作为行为调用的,那么原本的行为所有者模型通过self变量是不能直接获取的, 在Self动作里要获取行为的所有者,代码如下。
List<Thing> things = actionContext.getThings(); Thing realSelf = null; if(things.size() > 1){ realSelf = things.get(things.size() - 2); }