Author: mrdon Date: Sat Aug 6 00:56:40 2005 New Revision: 230535 URL: http://svn.apache.org/viewcvs?rev=230535&view=rev Log: * Adding dependency on new xwork which supports POJO actions * Adding default xwork interceptor chain support for controllers * Adding remote maven repo to get patched xwork jar * Adding more debugging * Removed need for ControllerAction wrapper with new xwork * Started to customize project pom
Added: struts/sandbox/trunk/ti/project.properties struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionProxyFactory.java - copied, changed from r230523, struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringActionProxyFactory.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerObjectFactory.java - copied, changed from r230523, struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringObjectFactory.java Removed: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerAction.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringActionProxyFactory.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringObjectFactory.java Modified: struts/sandbox/trunk/ti/project.xml struts/sandbox/trunk/ti/src/java/org/apache/ti/config/spring-config-servlet.xml struts/sandbox/trunk/ti/src/java/org/apache/ti/config/xdocletToXWork.vm struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionInvocation.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ChainRequestProcessor.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionMapping.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionProxy.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ExecuteAction.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitControllerContext.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitXWork.java struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ProcessActionChain.java Added: struts/sandbox/trunk/ti/project.properties URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/project.properties?rev=230535&view=auto ============================================================================== --- struts/sandbox/trunk/ti/project.properties (added) +++ struts/sandbox/trunk/ti/project.properties Sat Aug 6 00:56:40 2005 @@ -0,0 +1 @@ +maven.repo.remote=http://people.apache.org/~mrdon/repository/,http://www.ibiblio.org/maven/ Modified: struts/sandbox/trunk/ti/project.xml URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/project.xml?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/project.xml (original) +++ struts/sandbox/trunk/ti/project.xml Sat Aug 6 00:56:40 2005 @@ -43,26 +43,7 @@ <gumpRepositoryId>struts-ti-svn</gumpRepositoryId> <description> - The core of the Struts framework is a flexible control layer based on - standard technologies like Java Servlets, JavaBeans, ResourceBundles, - and Extensible Markup Language (XML), as well as various Jakarta Commons - packages. - - Struts encourages application architectures based on the Model - 2 approach, a variation of the classic Model-View-Controller (MVC) design - paradigm. Struts provides its own Controller component and integrates with - other technologies to provide the Model and the View. - - For the Model, Struts can interact with any standard data access technology, - including Enterprise Java Beans, JDBC, and Object Relational Bridge. - - For the View, Struts works well with JavaServer Pages, including JSTL and - JSF, as well as Velocity Templates, XSLT, and other presentation systems. - - The Struts framework provides the invisible underpinnings every professional - web application needs to survive. Struts helps you create an extensible - development environment for your application, based on published standards - and proven design patterns. + Struts Ti 2.0 is a simplified Model 2 framework for developing webapps which allows the developer better access to the underlying servlet/portlet environment. It serves a niche of web applications that don.t want the additional complexity of server-side components and verbose configuration, yet want the structure and controller features of a modern web framework. Struts Ti 2.0 builds on the directions of Struts 1.x, yet re-implements the framework to provide a clean slate for the next generation of Struts Ti. It aims to combine the simplicity of Ruby on Rails and NanoWeb, the refinement of WebWork 2, the tool-friendly authoring of Beehive, and the history of Struts 1.x. </description> @@ -91,13 +72,7 @@ </mailingLists> <developers> - <developer> - <name>Craig R. McClanahan</name> - <id>craigmcc</id> - <email>craigmcc at apache.org</email> - <organization></organization> - </developer> - + <developer> <name>Ted Husted</name> <id>husted</id> @@ -106,20 +81,6 @@ </developer> <developer> - <name>Rob Leland</name> - <id>rleland</id> - <email>rleland at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>Cedric Dumoulin</name> - <id>cedric</id> - <email>cedric.dumoulin at lifl.fr</email> - <organization></organization> - </developer> - - <developer> <name>Martin Cooper</name> <id>martinc</id> <email>martinc at apache.org</email> @@ -127,97 +88,13 @@ </developer> <developer> - <name>Arron Bates</name> - <id>arron</id> - <email>arron at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>James Holmes</name> - <id>jholmes</id> - <email>jholmes at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>David M. Karr</name> - <id>dmkarr</id> - <email>dmkarr at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>Eddie Bush</name> - <id>ekbush</id> - <email>ekbush at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>David Graham</name> - <id>dgraham</id> - <email>dgraham at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>James Mitchell</name> - <id>jmitchell</id> - <email>jmitchell at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>James Turner</name> - <id>turner</id> - <email>turner at blackbear.com</email> - <organization></organization> - </developer> - - <developer> - <name>Steve Raeburn</name> - <id>sraeburn</id> - <email>sraeburn at apache.org</email> - <organization></organization> - </developer> - - <developer> <name>Don Brown</name> <id>mrdon</id> <email>mrdon at apache.org</email> <organization></organization> </developer> - <developer> - <name>Joe Germuska</name> - <id>germuska</id> - <email>germuska at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>Niall Pemberton</name> - <id>niallp</id> - <email>niallp at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>Hubert Rabago</name> - <id>hrabago</id> - <email>hrabago at apache.org</email> - <organization></organization> - </developer> - - <developer> - <name>David Geary</name> - <id>dgeary</id> - <email>dgeary at apache.org</email> - <organization></organization> - </developer> - - </developers> + </developers> <contributors/> @@ -299,7 +176,7 @@ <dependency> <groupId>opensymphony</groupId> <artifactId>xwork</artifactId> - <version>1.0.5</version> + <version>SNAPSHOT</version> <properties> <war.bundle>true</war.bundle> </properties> Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/config/spring-config-servlet.xml URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/config/spring-config-servlet.xml?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/config/spring-config-servlet.xml (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/config/spring-config-servlet.xml Sat Aug 6 00:56:40 2005 @@ -19,11 +19,9 @@ <bean id="controllerContext" class="org.apache.ti.processor.ControllerContext" /> - <bean id="objectFactory" class="org.apache.ti.processor.SpringObjectFactory" /> + <bean id="objectFactory" class="org.apache.ti.processor.ControllerObjectFactory" /> - <bean id="actionProxyFactory" class="org.apache.ti.processor.SpringActionProxyFactory" /> - - <bean id="controllerAction" class="org.apache.ti.processor.ControllerAction" singleton="false" /> + <bean id="actionProxyFactory" class="org.apache.ti.processor.ControllerActionProxyFactory" /> <!-- Chain commands that need DI --> <bean id="createActionMapping" class="org.apache.ti.processor.chain.CreateActionMapping"> Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/config/xdocletToXWork.vm URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/config/xdocletToXWork.vm?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/config/xdocletToXWork.vm (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/config/xdocletToXWork.vm Sat Aug 6 00:56:40 2005 @@ -35,6 +35,7 @@ </result> #end #end + <interceptor-ref name="defaultStack"/> </action> #end #end Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionInvocation.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionInvocation.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionInvocation.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionInvocation.java Sat Aug 6 00:56:40 2005 @@ -29,101 +29,32 @@ private static final Log log = LogFactory.getLog(ControllerActionInvocation.class); - protected static final Map methodsCache = Collections.synchronizedMap(new HashMap()); - protected BeanFactory beanFactory; - protected ControllerAction ctrAction; protected Method actionMethod; - protected ControllerActionInvocation(BeanFactory factory, ActionProxy proxy) throws Exception { - this(factory, proxy, null); + protected ControllerActionInvocation(ActionProxy proxy) throws Exception { + this(proxy, null); } - protected ControllerActionInvocation(BeanFactory factory, ActionProxy proxy, Map extraContext) throws Exception { - this(factory, proxy, extraContext, true); + protected ControllerActionInvocation(ActionProxy proxy, Map extraContext) throws Exception { + this(proxy, extraContext, true); } - protected ControllerActionInvocation(BeanFactory factory, ActionProxy proxy, Map extraContext, boolean pushAction) throws Exception { + protected ControllerActionInvocation(ActionProxy proxy, Map extraContext, boolean pushAction) throws Exception { super(proxy, extraContext, pushAction); } - protected Object getController() { - return ((ControllerAction) action).getController(); - } - public Method getActionMethod() { - return actionMethod; - } - - protected void createAction() { - super.createAction(); - - if (action instanceof ControllerAction) { - ctrAction = (ControllerAction) action; - createActionMethod(); - } - } - - protected String invokeAction(Action action, ActionConfig actionConfig) throws Exception { - - if (action instanceof ControllerAction) { - try { - if (actionMethod.getParameterTypes().length == 1) { - return (String) actionMethod.invoke(getController(), new Object[]{ctrAction.getForm()}); - } else { - return (String) actionMethod.invoke(getController(), new Object[0]); - } - } catch (InvocationTargetException e) { - // We try to return the source exception. - Throwable t = e.getTargetException(); - - if (t instanceof Exception) { - throw (Exception) t; - } else { - throw e; + if (actionMethod == null) { + if (getPOJOAction() != null) { + try { + actionMethod = proxy.getConfig().getMethod(getPOJOAction().getClass()); + } catch (NoSuchMethodException ex) { + throw new IllegalStateException("Cannot location method '"+proxy.getConfig().getMethodName() + + "' in action '"+getPOJOAction().getClass()+"'"); } - } - // DO STUFF - } else { - return super.invokeAction(action, actionConfig); - } - } - - - protected void createActionMethod() { - //String methodName = proxy.getMethod(); - - //if (methodName == null && actionConfig.getMethodName() == null) { - // return null; - //} - //if (methodName == null) { - // methodName = actionConfig.getMethodName(); - //} - String methodName = getProxy().getConfig().getMethodName(); - Method method = null; - Class ctrClass = getController().getClass(); - - - - Method[] methods = (Method[]) methodsCache.get(ctrClass); - if (methods == null) { - methods = ctrClass.getMethods(); - methodsCache.put(ctrClass, methods); - } - - Method m; - for (int x = 0; x < methods.length; x++) { - m = methods[x]; - if (m.getName().equals(methodName) && m.getParameterTypes().length < 2) { - method = m; - break; - } - } - - if (method == null) { - throw new IllegalArgumentException("Method '" + methodName + "()' is not defined in controller '" + ctrClass + "'"); - } - - actionMethod = method; + } + } + return actionMethod; } } Copied: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionProxyFactory.java (from r230523, struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringActionProxyFactory.java) URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionProxyFactory.java?p2=struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionProxyFactory.java&p1=struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringActionProxyFactory.java&r1=230523&r2=230535&rev=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringActionProxyFactory.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerActionProxyFactory.java Sat Aug 6 00:56:40 2005 @@ -17,26 +17,18 @@ /** * Creates special action invocation instances that handle ControllerActions */ -public class SpringActionProxyFactory extends DefaultActionProxyFactory implements BeanFactoryAware { - - public static final String ACTION_INVOCATION = "actionInvocation"; - - protected BeanFactory beanFactory; - - public void setBeanFactory(BeanFactory factory) { - this.beanFactory = factory; - } +public class ControllerActionProxyFactory extends DefaultActionProxyFactory { public ActionInvocation createActionInvocation(ActionProxy actionProxy) throws Exception { - return new ControllerActionInvocation(beanFactory, actionProxy); + return new ControllerActionInvocation(actionProxy); } public ActionInvocation createActionInvocation(ActionProxy actionProxy, Map extraContext) throws Exception { - return new ControllerActionInvocation(beanFactory, actionProxy, extraContext); + return new ControllerActionInvocation(actionProxy, extraContext); } public ActionInvocation createActionInvocation(ActionProxy actionProxy, Map extraContext, boolean pushAction) throws Exception { - return new ControllerActionInvocation(beanFactory, actionProxy, extraContext, pushAction); + return new ControllerActionInvocation(actionProxy, extraContext, pushAction); } } Copied: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerObjectFactory.java (from r230523, struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringObjectFactory.java) URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerObjectFactory.java?p2=struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerObjectFactory.java&p1=struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringObjectFactory.java&r1=230523&r2=230535&rev=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/SpringObjectFactory.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/ControllerObjectFactory.java Sat Aug 6 00:56:40 2005 @@ -4,40 +4,28 @@ */ package org.apache.ti.processor; -import org.springframework.beans.factory.BeanFactory; -import org.springframework.beans.factory.BeanFactoryAware; - import com.opensymphony.xwork.Action; import com.opensymphony.xwork.ObjectFactory; import com.opensymphony.xwork.config.entities.ActionConfig; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * Builds actions from the config. If an Action is not created, it is assumed to be a Controller. */ -public class SpringObjectFactory extends ObjectFactory implements BeanFactoryAware { - - public static final String CONTROLLER_ACTION = "controllerAction"; - - protected BeanFactory beanFactory; +public class ControllerObjectFactory extends ObjectFactory { - public void setBeanFactory(BeanFactory factory) { - this.beanFactory = factory; - } + private static final Log log = LogFactory.getLog(ControllerObjectFactory.class); /** * Build an Action of the given type */ - public Action buildAction(ActionConfig config) throws Exception { - Object obj = buildBean(config.getClassName()); - if (obj instanceof Action) { - return (Action) obj; - } else { - ControllerAction action = (ControllerAction) beanFactory.getBean(CONTROLLER_ACTION); - Object controller = buildBean(config.getClassName()); - action.setController(controller); - return action; - } + public Object buildPOJOAction(ActionConfig config) throws Exception { + + //log.warn("Building a POJO action "+config.getClassName(), new Exception()); + // TODO: this should be handled differently with Page Flow + return super.buildPOJOAction(config); } } Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ChainRequestProcessor.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ChainRequestProcessor.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ChainRequestProcessor.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ChainRequestProcessor.java Sat Aug 6 00:56:40 2005 @@ -153,7 +153,7 @@ // Create and execute the command. try { if (log.isDebugEnabled()) { - log.debug("Using processing chain for this request"); + log.debug("Using the processing chain for this request"); } // Add initialization parameters directly to context. Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionMapping.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionMapping.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionMapping.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionMapping.java Sat Aug 6 00:56:40 2005 @@ -22,12 +22,16 @@ import org.apache.commons.chain.web.WebContext; import org.apache.ti.config.mapper.ActionMapper; import org.apache.ti.config.mapper.ActionMapping; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * Creates an ActionMapping and stores it in the context. */ public class CreateActionMapping implements Command { + private static final Log log = LogFactory.getLog(CreateActionMapping.class); + protected ActionMapper actionMapper; public void setActionMapper(ActionMapper mapper) { @@ -35,6 +39,7 @@ } public boolean execute(Context origctx) { + log.debug("Executing create action mapping"); WebContext ctx = (WebContext) origctx; ActionMapping mapping = actionMapper.getMapping(ctx); Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionProxy.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionProxy.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionProxy.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/CreateActionProxy.java Sat Aug 6 00:56:40 2005 @@ -42,6 +42,8 @@ protected static final Log log = LogFactory.getLog(CreateActionProxy.class); public boolean execute(Context origctx) { + log.debug("Creating action proxy"); + WebContext ctx = (WebContext) origctx; ActionMapping mapping = (ActionMapping) ctx.get("actionMapping"); @@ -73,6 +75,7 @@ // extraContext.put(ActionContext.VALUE_STACK, new OgnlValueStack(stack)); //} try { + log.debug("Trying to get proxy"); ActionProxy proxy = ActionProxyFactory.getFactory().createActionProxy(mapping.getNamespace(), mapping.getName(), extraContext); //request.setAttribute(ServletActionContext.WEBWORK_VALUESTACK_KEY, proxy.getInvocation().getStack()); return proxy; Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ExecuteAction.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ExecuteAction.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ExecuteAction.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ExecuteAction.java Sat Aug 6 00:56:40 2005 @@ -23,13 +23,18 @@ import com.opensymphony.xwork.ActionContext; import com.opensymphony.xwork.ActionProxy; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * Initializes XWork by replacing default factories. */ public class ExecuteAction implements Command { + private static final Log log = LogFactory.getLog(ExecuteAction.class); + public boolean execute(Context origctx) throws Exception { + log.debug("Executing action"); ActionContext ctx = ActionContext.getContext(); ActionProxy proxy = ctx.getActionInvocation().getProxy(); Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitControllerContext.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitControllerContext.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitControllerContext.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitControllerContext.java Sat Aug 6 00:56:40 2005 @@ -37,6 +37,7 @@ } public boolean execute(Context origctx) { + log.debug("Initializing controller context"); ControllerContext.setControllerContext(context); return false; } Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitXWork.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitXWork.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitXWork.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/InitXWork.java Sat Aug 6 00:56:40 2005 @@ -24,12 +24,16 @@ import com.opensymphony.xwork.ActionProxyFactory; import com.opensymphony.xwork.ObjectFactory; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * Initializes XWork by replacing default factories */ public class InitXWork implements Command { + private static final Log log = LogFactory.getLog(InitXWork.class); + protected ObjectFactory objectFactory; protected ActionProxyFactory actionProxyFactory; @@ -42,6 +46,7 @@ } public boolean execute(Context origctx) { + log.debug("Initializing XWork"); WebContext ctx = (WebContext) origctx; ObjectFactory.setObjectFactory(objectFactory); Modified: struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ProcessActionChain.java URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ProcessActionChain.java?rev=230535&r1=230534&r2=230535&view=diff ============================================================================== --- struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ProcessActionChain.java (original) +++ struts/sandbox/trunk/ti/src/java/org/apache/ti/processor/chain/ProcessActionChain.java Sat Aug 6 00:56:40 2005 @@ -23,14 +23,18 @@ import com.opensymphony.xwork.ActionContext; import com.opensymphony.xwork.ActionProxy; - +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; /** * Initializes XWork by replacing default factories. */ public class ProcessActionChain extends ChainBase { + private static final Log log = LogFactory.getLog(ProcessActionChain.class); + public boolean execute(Context context) throws Exception { + log.debug("Processing action chain"); ActionContext nestedContext = ActionContext.getContext(); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]