struts2 - comprendre la valeur de la pile

J'ai une question concernant la struts2 valeur de la pile. Disons que j'ai une classe d'Action appelé RegisterAction qui a une méthode execute comme suit:

public String execute() {
    ValueStack stack = ActionContext.getContext().getValueStack();
    stack.push(new String("test string"));
    return SUCCESS;
}

Mon struts.xml ressemble à ceci:

<struts>
    <package name="default" extends="struts-default">
        <action name="*Register" method="{1}" class="vaannila.RegisterAction">
            <result name="populate">/register.jsp</result>
            <result name="input">/register.jsp</result>
            <result name="success">/success.jsp</result>
        </action>        
        <action name="*Test" method="{1}" class="vaannila.TestAction">
            <result name="test">/test.jsp</result>
            <result name="success">/success2.jsp</result>
        </action>        
    </package>
</struts>

Sorte de contrôle de flux pour le succès.jsp après la méthode execute exécute dans cette classe.

Mes questions sont:

1) comment puis-je obtenir cette valeur j'ai poussé sur la pile dans l' success.jsp?

2) disons que dans success.jsp j'ai un <s:submit method="testMethod" /> qui redirige vers une classe d'action appelé TestAction. En d'autres termes, à partir de la page du Registre, l'utilisateur clique sur envoyer, et dans la méthode execute de l' RegisterAction nous pousser à la "chaîne de test" sur la pile. Puis nous allons à success.jsp. Le success.jsp a un bouton submit qui nous oriente vers TestAction#testMethod. Dans TestAction#testMethod, est la valeur que j'ai poussé sur la pile dans RegisterAction#execute toujours là? Comment puis-je l'obtenir? Je traversai le débogueur eclipse mais je ne vois pas la valeur.

Grâce.

OriginalL'auteur dcp | 2009-11-26