2011-07-10 12 views
0

良い一日!Struts 2 Framework - アクションにリダイレクト

私は現在Struts 2を勉強していますが、私はXMLとかなり混同しています。私はどこから始めるべきかわかりません。次のように私は私のindex.jspのが私のコードので、私のディスプレイアクションクラスに行きたい

は次のとおりです。

index.jspを

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<html> 
<head> 
    <META HTTP-EQUIV="Refresh" CONTENT="0;URL=package.action/DisplayContactAction"> 
</head> 
<body> 
</body> 
</html> 

struts.xml

<action name="index"> 
     <result type="redirectAction"> 
      <param name="actionName">HelloWorld</param> 
      <param name="namespace">/example</param> 
     </result> 
    </action> 

缶誰上記のstruts.xmlのコードが意味することを私に説明してください。

私はアクションクラスに自分のページをリダイレクトした後、私はそれが今...どのように私は、XMLを使用して値を渡すことができdisplay.jsp

アクションクラス

private ArrayList<Contacts> contactsList; 
    private int id; 
    private String firstName; 
    private String lastName; 
    private String telNumber; 
    private String email; 

    public String execute() { 
     String result = null; 

     ContactsManager contactsManager = ContactsManager.getInstance(); 
     contactsList = ContactsManager.getContactsList(); 

     result = "success"; 
     return result; 
    } 

に行きたいですか? また、アクションクラスで生成されたデータをjspに転送するにはどうしたらいいですか?

ありがとうございます。

+0

まず、デフォルトのタイプ(ディスパッチ)(通常はリクエストのロジックを実行する1つのアクションと結果を示す1つのJSP)を使用して、struts2の基本的なワーフローを理解してください。これを明確にした場合にのみ、特定の(あまり使われていない) 'redirectAction'型を理解しようとします。これにより、別のアクションが呼び出されます – leonbloy

答えて

2

上記のstruts.xmlのコードは誰でも説明することができます。

次の結果は、HelloWorldアクション(おそらく/ example/HelloWorld)のURLにリダイレクトされます。

<result type="redirectAction"> 
    <param name="actionName">HelloWorld</param> 
    <param name="namespace">/example</param> 
</result> 

それはにリダイレクトするURLを決定するためにActionMappergetUriFromActionMapping(ActionMapping)メソッドを呼び出します。また、標準のリダイレクトタイプ(type="redirect")を使用することもできます。

さらに、アクションクラスで生成されたデータをjspに転送するにはどうすればよいですか?

データを公開するにはゲッターが必要です。それから、JSPでアクセスできます。

関連する問題