Building on XWork

This page describes aspects of Ti that build on XWork.

ControllerAction

src/java/org/apache/ti/processor/ControllerAction.java is a thin wrapper around a Controller object and is the key integration point between XWork and Ti. To support the special handling of this action, the following classes need to replace their XWork equivalences:

XWork Interface

Ti Impl

Description

ObjectFactory

[src/java/org/apache/ti/processor/SpringObjectFactory.java SpringObjectFactory]

Overrides buildAction to support the Action class actually being a Controller, and if so, wrapping it in a ControllerAction. If not, delegate to old behavior. It is important this extension is used by the custom ActionInvocation instance since it is called by the configuration during initialization.

ActionProxyFactory

[src/java/org/apache/ti/processor/SpringActionProxyFactory.java SpringActionProxyFactory]

Overrides createActionInvocation(*) methods to return [src/java/org/apache/ti/processor/ControllerActionInvocation.java ControllerActionInvocation].

ActionInvocation

[src/java/org/apache/ti/processor/ControllerActionInvocation.java ControllerActionInvocation]

Provides special handling if Action is a ControllerAction. If not, delegate to old behavior.

At this point, the ControllerAction integration doesn't really do much other than allow an Action to a POJO, however, in the future, Page Flow capabilities will be added, probably to [src/java/org/apache/ti/processor/ControllerActionInvocation.java ControllerActionInvocation].

StrutsTi/XWork (last edited 2009-09-20 23:11:38 by localhost)