You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Torsten Krah <tk...@fachschaft.imn.htwk-leipzig.de> on 2008/11/13 20:59:06 UTC

Re: Portlet, DirectRenderFromEventAction - how to change the interceptor stack?

On Friday 24 October 2008 09:57:18 Nils-Helge Garli Hegvik wrote:
> If you can, I would suggest that
> you re-organize your application so that every event (usually a post)
> is followed by a redirect (using the redirect action result type).
> That way, the "RenderDirect" action is never used.

Did what you told but now i have got an really odd behaviour.
I am using this strus config:

		<action name="jasper" class="PDFAction">
			<result name="input">/WEB-INF/view/jasper.jsp
			</result>
			<result name="success">/WEB-INF/view/jasper.jsp
			</result>
			<result name="doreport" type="redirectAction">
				<param name="actionName">jasper</param>
				<param name="method">generate</param>
				<param name="parse">true</param>
				<param name="statisticType">${statisticType}</param>
				<param name="chartType">${chartType}</param>
				<param name="timeType">${timeType}</param>
				<param name="statBegin">${statBegin}</param>
				<param name="statEnd">${statEnd}</param>
				<param name="tag">${tag}</param>
				<param name="consumerId">${consumerId}</param>
			</result>
		</action>

If i do a post to the form using a s:submit button with method "doReport" 
which returns "doreport" my generate action gets called twice.
If i do not use the redirectAction, my generate method gets called only once 
like expected.

Why is the method specified at the redirectAction actually called twice? Its 
really annoying because genrating the report involved load to the system (db 
etc.) and it should only occur ones.

Any hints where to search for? Something misconfigured here?

thx

-- 
Bitte senden Sie mir keine Word- oder PowerPoint-Anhänge.
Siehe http://www.gnu.org/philosophy/no-word-attachments.de.html

Really, I'm not out to destroy Microsoft. That will just be a 
completely unintentional side effect."
	-- Linus Torvalds