Author: tmjee Date: Wed Jul 19 08:22:49 2006 New Revision: 423489 URL: http://svn.apache.org/viewvc?rev=423489&view=rev Log: WW-1385 - flush writer to make sure action refered get rendered in order
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ActionComponent.java Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ActionComponent.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ActionComponent.java?rev=423489&r1=423488&r2=423489&view=diff ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ActionComponent.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ActionComponent.java Wed Jul 19 08:22:49 2006 @@ -34,6 +34,8 @@ import javax.servlet.jsp.PageContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; + +import java.io.IOException; import java.io.Writer; import java.util.HashMap; import java.util.Map; @@ -125,13 +127,23 @@ } public boolean end(Writer writer, String body) { - executeAction(); - - if ((getId() != null) && (proxy != null)) { - getStack().setValue("#attr['" + getId() + "']", proxy.getAction()); - } - - return super.end(writer, ""); + boolean end = super.end(writer, "", false); + try { + try { + writer.flush(); + } catch (IOException e) { + LOG.warn("error while trying to flush writer ", e); + } + executeAction(); + + if ((getId() != null) && (proxy != null)) { + getStack().setValue("#attr['" + getId() + "']", + proxy.getAction()); + } + } finally { + popComponentStack(); + } + return end; } private Map createExtraContext() {