1

私の目的は、ユーザーを外部サイトにリダイレクトし、ユーザーを私のサイトに戻してもらうことですが、TrinidadpageFlowScopeは保持します。このようにして、さまざまなページで処理と状態保存を実行し、それらを外部サイトに送信して外部処理を行ってから、サイトに戻って処理を完了することができます。ユーザーの観点からは、1つの連続したフローを実行しているように見え、場合によっては、異なるブラウザータブでこれらの複数のフローを同時に実行しているように見えます。

状態が復元されないことを除いて正常に機能するすべてを移行しようとしている方法は、フロー内のページから外部サイトに投稿し、次に外部サイトが次のサイトに投稿することです。ページ。これは、切断されたADFタスクフローが別のサーバーで実行され、タスクフローに戻るようなものです。

mysite.foo/faces/summary.jsf-> POST externalappserver.foo / faces/startexternal.jsf->別のページ->POSTmyite / foo / faces / continue.jsf

私はあちこちを調べて、javax.faces.ViewStateを取り巻くさまざまな問題を見つけましたが、それを引き出して外部サイトに渡し、しばらくしてから外部サイトに別の(またはそれが最初に来たのと同じ)ページです。

自分のサイトに適切にランデブーできるように、状態を操作する方法について何かアイデアはありますか?

4

1 に答える 1

0

他のサービスに渡したコールバックURLにTrinidad隠しフォームパラメーターを配置することで、これを解決することになりました。したがって、サーバー/アプリがhttp:// localhost:7001 / context / pageout.jsfであり、コールバックURLを使用して別のサイトに投稿する場合、コールバックURLは次のようになります。

http:// localhost:7001 / context / pageout.jsf?_afPfm = 234z345

これにより、トリニダードはブラウザによって提供されるJSESSIONIDCookieと組み合わせてページフローを復元できます。ViewStateフィールドやその他のセッションの問題に対処する必要はありませんでした。私のpageFlowScopeはすべて正常に復元されました。

于 2012-05-10T18:31:37.530 に答える