私のタイムゾーンの午後は良いです。アクションからアクションへの転送
私はstrutsフレームワークを使用してWebアプリケーションを開発しています。簡単な方法で は、ユーザがコールされた最初のアクションがSecurityActionあるアプリケーションを呼び出すときに、このアクションは、2つのアクションのいずれかにリダイレクトする、これは私がリダイレクトを行う方法です:
で if (user == "type_profile")
forward = mapping.forward("action2Fwd");
else
forward = mapping.forward("action3Fwd");
return forward;
struts-config.xml私は
<global-forwards>
<forward name="action2Fwd" path="/action2.do"/>
<forward name="action3Fwd" path="/action3.do"/>
</global-forwards>
<action path="/action2"
type="com.teste.dummy.action2"
name="actionForm"
validate="true"
input="/action2.jsp">
</action>
私は最初の質問:アクションから別のアクションにリダイレクトするための最良の方法ですか?
2番目の質問:別のアクションにリダイレクトすると、actionFormが実行されます。このリクエストは別のアクションから来たものですか?
フォームの中にリクエストが別のアクションから来た場合、私は何かを検証したくないので、このリクエストは別のアクションから来て、 "ブラウザ"から来ないことを知っていなければなりません。このリクエストが別のアクションに由来することを示す要求またはセッションスコープのフラグですが、これが最善の方法ですか?
しかし、この要求をリダイレクト誰見つける方法はありますか? 何かのように - > mapping.getWhoRedirect() – tt0686
@ tt0686その情報をフォーム(またはリクエストなど)に入れます。同じフラグを使用して、それが別のアクションから来たものであるかどうか、およびそれがどのアクションから来たものかを識別することができます。私はこれが優れたアーキテクチャであるとは確信していませんが、そのメカニズムは健全です。あなたは参照元を使って試してみることができますが、mehです。 –