2017-10-25 18 views
0

私はstruts2アプリケーションで作業していますが、私は4つのアクションに関連しています。最初の "EditMagazineAction"を呼び出すときに、 "EditBooksAction"にリダイレクトされることがあります。
"ValidateBooksAction"から来ているときにこのリダイレクトが必要です。だから私はセッションの中で私が来ていることの価値を保存しました。私はEditMagazineActionのメソッドを用意して、このアクションに留まるか、 "EditBooksAction"に変更するかをチェックします。私がやってみたいのは、この "EditBooksAction"にリダイレクトするだけで、 "EditMagazineAction"のprepareメソッドでは何も実行しませんが、もし私がいたいなら、準備を続けます。 これは私のために働いていますが、私は "本当に正しい"とは言えませんでした。どれくらい悪いですか? このプロジェクトでは、私は本当のリダイレクトを取得できません、私は直接 "EditBooksAction"に行くことはできませんので、私は "EditMagazineAction"を経由しなければなりません。Struts2の準備メソッド

+0

コード内の問題を確認すると便利です。私は考えています –

+0

prepare()はリダイレクトを意味します。あなたが話している2つの場所に異なる文字列値を設定して、2つの異なる方法にリダイレクトすることはできませんか? – Yash

答えて

0

あなたは、アクションの戻りredirect1no_redirectまたはredirect2で、その後redirect action result

以下のような
<package name="public" extends="struts-default"> 
    <action name="action1" class="..."> 
     <result name="redirect1" type="redirectAction"> 
      <param name="actionName">action2</param> 
     </result> 
     <result name="no_redirect">my.jsp</result> 
     <result name="redirect2" type="redirectAction"> 
      <param name="actionName">action3</param> 
     </result> 
    </action> 
</package> 

を使用することができます。