問題タブ [flow-scope]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3258 参照

jsf - WELD-001303 スコープ タイプ javax.faces.flow.FlowScoped のアクティブなコンテキストがありません

登録プロセスに Faces フローを実装していますが、Bean の「CreateBn」に @FlowScoped でアノテーションを付けると、次のエラーが発生します。また、CDI: SessionScoped を使用すると、次のように動作します。

そしてここに豆があります:

また、ファイルの命名エラーがないことを確認しています: フロー フォルダー、xxx-flow.xml、xxx-return.xhtml。助けてください

0 投票する
1 に答える
422 参照

jsf-2 - フローを「メソッド呼び出しノード」に誘導する「スイッチ ノード」の FromOutcome が機能しない

フローを次のように定義しました。

ご覧のとおり、2 つのスイッチ ノードがあります。最初はView Node に向けられ、2 番目は a に向けられようとしていMethod Call Nodeます。

1 つ目は問題なく動作しますが、2 つ目は頭痛の種です。2番目のものは私にエラーを与えています

Unable to find matching navigation case with from-view-id '/pages/publishers-form.xhtml' for action '#{publisherBean.proceed()}' with outcome 'proceed-form'.

進行機能はただ

ログに記録された情報publisherBean.actionType.ifEdit()は true を返しますが、その事実は無視されます。結果をinvoke-updatetoformまたは他のView NodeID に変更すると、「正常に動作します」。

私は何か間違ったことをしているのですか、それともMethod Call Nodeaの結果として使用できSwitch Nodeませんか?

0 投票する
1 に答える
367 参照

jsf-2 - メソッドの初期化後に Faces Flow に inboundParameters をロードする

フローを定義しました:

ご覧のとおり、受信パラメーターがあります<initialize>。タグで渡されたメソッドで適切な初期化が必要です。問題は、初期化メソッド中にその値にアクセスすることlockingBean.initializeBean()です。実行中のパラメーターtargetIdは null です。ビューではその値をテキストとして配置しているため、正しく渡されます。つまり、渡されたメソッド<initialize>が実行され、その後、受信パラメーターが Bean に渡されます。私の意見では、この順序は正しくありません。

この順序を変更することは可能ですか、それともきれいな方法はありますか?

この時点では、初期化メソッドで何もしていません。すべての初期化は一時的に別のメソッドに移動され、ビュー ファイルから呼び出され、パネル グループにレンダラーが設定されます。それはすべてうまくいきますが、この解決策は正しいとは言えません。

0 投票する
1 に答える
4207 参照

jsf - WELD-001303 直接アクセスでスコープ タイプ javax.faces.flow.FlowScoped のアクティブなコンテキストがありません

週の初めから JSF 2.2 (MyFaces 実装 v2.2.6 および CDI の Weld v2.2.7.Final) で遊んでいますが、次の問題に直面しています。弟と一緒にフロー エントリ ポイントに直接アクセスできません。 .

例えば ​​:

私の webapp には、データベースにレコードを作成することを許可する「作成」という名前のフローが含まれています。http://my.domain/webapp/create/create.jsfブラウザのアドレス バーにURL を入力できるようにしたいと考えています。

そうすると、ページが正しくレンダリングされず、次のログがサーバーに表示されます

ログ : WELD-001303 スコープ タイプ javax.faces.flow.FlowScoped のアクティブなコンテキストがありません。

私は何を間違っていますか?それは可能であるべきではありませんか?私はそれがあることを願っています!

フローの外部で、フロー エントリ ポイントにリダイレクトする commandButton が 1 つしかないページを作成しても問題はありません。ソース コードを見ると、フローがまだアクセスされていないにもかかわらず、フローの ID が既に作成されているようです。そのため、FlowScoped の設計が不十分だと思います。さらに、このような回避策 (「ランチャー」ページ) は、私自身のデザインとエンド ユーザー エクスペリエンスを損ないます。

利用可能なソリューションは何ですか?

サンプルコードは次のとおりです。

create.xhtml

CreateController

xhtml「ランチャー」

create-flow.xml には「flow-return」ディレクティブのみが含まれます。

0 投票する
1 に答える
745 参照

jsf-2.2 - Faces フローはサーブレット内から開始できますか?

ユーザーをログイン画面にリダイレクトするサーブレットによってアクセスされるサービスがあります。バッキング Bean のスコープは現在、@ConversationScoped から @FlowScoped に変更されています。これは、処理が容易になるためです。

暗黙のアクションや JSF フォワード/リダイレクトによる間接化なしに、サーブレット内から直接 Faces フローを初期化する方法はありますか?

@FlowScope が JSF (2.2) スコープであることは承知しており、たとえば FacesServlet などを拡張する方法があるかどうか疑問に思っていました。

回避策として、現在、ボタン付きのビューを追加しました。これにより、JSF フォワードがフロー ディレクトリに入るようになりますが、これを回避しようとしています。

更新
ボタンをクリックしなくても、フローに「自動的に」転送する多くのアプローチを試しましたが、常にNo active contexts for scope type javax.faces.flow.FlowScoped. ここで私のアプローチ:

  1. f:viewAction

    これは実行が早すぎるようです (いずれにせよ)。

  2. f:event

    Bean のメソッドは、 と同じ結果を返しますf:viewAction

  3. ナビケース

    /li>

私は何が欠けていますか?

0 投票する
0 に答える
97 参照

jsf-2 - JSF 2.2 の視点ノードとは何ですか?

一部のビューをフロー ビュー ノードとして定義する利点は何ですか?

ビュー ノードは、別のフロー定義ファイル内またはタグをFlowBuilder#viewNode使用して定義できます。例えばviewfaces-config.xml

この定義が開始ノードを決定するために必要であると理解しています。しかし、他のビューをフローのメンバーとして定義する理由

  • 他のビューもフロー スコープ Bean にアクセスできます。
  • フロー ビューから非フロー ビューへのナビゲーションは正常に機能しますか?
0 投票する
0 に答える
269 参照

jsf - JSF 2.2 と Flows - ビュー ID から一致するナビゲーション ケースが見つからない

シンプルな JSF フロー アプリケーションを開発しています。JSF.2.2 および GlassFish 4。

アプリケーションのビュー構造は次のようになります。 ここに画像の説明を入力

しかし、ある流れに入ると問題が発生します。例えばFLOW-A。その後、次の警告が表示されます。

ここに画像の説明を入力

すでにこのフローにいる場合、同じフローに戻ることはできませんか?

0 投票する
1 に答える
314 参照

cdi - Web フラグメントでのフローの使用

フローを含む webfragment を含む webapp を構築しようとしています。

webfragment として使用したい webapp のスタンドアロン バージョンの構築を開始しました。それは働いています。その後、次の構造に変換しました。

構造についてはよくわかりません。より良いものや慣例があれば教えてください。

Webfragment は正しく設定されており、webapp はそれを認識しています。「webfragment-start.xhtml」ページに移動できますが、フローに入ろうとすると、NullPointerException が発生します。

JSF 2.2とOmnifacesも使用している別のプロジェクトで、このメッセージが表示されるため、CDIが正しく利用できないと思います

http://omnifaces.org/cdi/を参照

Tomcat に CDI をインストールする方法に関する BalusC の指示にも従いました。これはスタンドアロンの webapp として機能しますが、webfragment としては機能しません。

Webfragment の構築方法に関する適切でわかりやすいチュートリアルが見つかりませんでした。どなたかご存知でしたら、教えていただければ幸いです。

すべてのヘルプは大歓迎です!

よろしく、 ミーシャ