2011-07-08 6 views
1

同じアクションのメソッドを呼び出し、パラメータを渡したかったのです。 誰かに私に電話をかける方法を教えてもらえますか?アクションクラスで通常struts 2では、同じアクションのメソッドを、メソッド呼び出しと共にパラメータを渡して呼び出す方法

同じクラスのメソッドは、同じクラスの別の方法で呼び出された場合は、ちょうど私達は書く:

リターンのmethodName();

しかし、私は呼び出しと一緒にパラメータを渡して呼び出したい場合は、

答えて

1

すべてのメソッドでアクセスできるように、アクションクラスのクラス変数に保存できますか?

public class MyAction extends ActionSupport { 

    private Object parameter; //The parameter to be passed between methods 

    public String firstAction() { 
     ... 
     parameter = something; //Set the parameter for second action to access 
     return secondAction(); 
    } 
    ... 
} 
1

これを行うには2つの方法があります。

あなたは同じアクションのメソッドを呼び出したい場合は、次のメソッドは、別のアクションであり、あなたがあなたのアクションマッピングでそのアクションのメソッド指定した場合

<s:property value="methodName(parameter)"/> 

<s:action name="actionName_mehtodName" executeResult="false"> 
    <s:param name="paramName" value="paramValue"/> 
<s:action/> 

後者の場合、executeResultfalseに設定した場合は、後で使用するためにアクションをValueStackに設定するアクションを使用できます。しかし、そのアクションの結果が何であってもtrueに設定されている場合、それは実行されます。

関連する問題