私は新しいコントローラーコマンドで作業していました。struts-config-ext.xml で構成されているビューにリダイレクトするために、コントローラー コマンドでビューの転送とリダイレクトの両方を使用する方法を知りたいのですが。
1 に答える
1
次のようなことを試すことができます。
リダイレクト:
public void performExecute() throws ECException {
//do something here...
//....................
TypedProperty rspProp = new TypedProperty();
rspProp.put(ECConstants.EC_URL, "YourViewName");
rspProp.put(ECConstants.EC_VIEWTASKNAME, ECConstants.EC_GENERIC_REDIRECTVIEW);
//....................
//....................
}
前方:
public void performExecute() throws ECException {
//do something here...
//....................
TypedProperty rspProp = new TypedProperty();
rspProp.put(ECConstants.EC_VIEWTASKNAME, "YourViewName");
//....................
//....................
}
コマンドから strut-config-ext.xml で設定されたビューに制御を渡すために、コントローラ コマンドでフォワードとリダイレクトの両方を使用できます。forward を使用すると、コマンドとビューの両方が 1 つのトランザクションで実行され、ビューで例外が発生した場合、コマンドで保存されたすべてのデータがロールバックされます。ただし、コマンドでリダイレクト ビューを使用すると、フォワードとは異なり、コマンドとビューは 2 つのトランザクションで実行されます。コマンドが完了すると、トランザクションがコミットされ、新しいトランザクションが開始されて表示されます。この場合、ビューの例外によって、コマンドでコミットされたデータがロールバックされない場合があります。
于 2013-03-19T13:12:55.160 に答える