問題タブ [stateful]

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 投票する
1 に答える
3111 参照

html - 要素のデータを html 属性として保存する

要素の属性内に状態またはデータを格納するツールをいくつか見ました。

ただし、一部の Doctype では無効です。

まったく。これはステートフルな要素の良い解決策ですか? そうでない場合は、アドバイスをいただければ幸いです。

前もって感謝します。

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

javascript - ajax は Web アプリケーションをステートフルにできますか?

Ajax は、更新の必要なくブラウザーに情報を返すことができます。IDをセッション/ステートフルな動作に保存するということですか? Ajax に基づく Web アプリケーションの URL に変更は見られません。私が見ている例は - http://evolvingweb.github.io/ajax-solr/examples/reuters/index.htmlです。ASP.NET MVC で開発されたステートレスな UI と、JavaScript フレームワークで開発された UI と ajax を比較しようとしています。

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

service - DDD (ドメイン駆動設計) でステートフル ドメイン サービスを実装できますか?

Entityとして「Note」Domainオブジェクトがあります。

以下のようなノートのオープン&セーブを扱う「NoteEditor」を考えてみました。

ご覧のとおり、NoteEditor はステートレスではありません。

NoteEditor は DDD の Domain Service なのだろうか?

また、あなたの意見、私のデザインの修正が成長するのを見たいです。

追加します。ステートフル エディターを作成した理由を説明します。

2 つのクライアント (WebClient と MobileClient) があると想定できます。

WebClient は以下のように使用します。

MobileClient は以下のように使用します。

これは、一部のクライアントが一度に少しの属性を編集できることを意味します。

そのため、open() メソッドで editable(authority) を確認し、上記のコード ブロックのように save() メソッドで変更情報を入れたいと考えています。

以下は NoteService コードです。

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

ejb - 2 つの異なる CDI Bean で同じ EJB を使用し、1 つの Bean から別の Bean に設定された値を取得するにはどうすればよいですか?

リストが維持されるステートフル セッション Bean があります。

カートに追加する Controller1:

では、別のカートからリストに追加されたアイテムを取得できますか?

明らかに、上記のコードは null を返します。

別のコントローラーからリストを取得するにはどうすればよいですか。どんな助けでも大歓迎です。

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

jakarta-ee - ステートフル Bean は、さまざまな Web サーブレットによってクエリが実行されたときに配列の内容を記憶する必要がありますか?

最近、Java ee アプリケーションの勉強を始めました。大学のプロジェクトのタスクの 1 つは、フライト予約システムを構築することです。これを行うために、私はいくつかのサーブレットとステートフルな Java Bean を使用しています。使用しているデータが配列にロードされた時点で、後でデータベースを追加します。

ステートフル Bean 内の情報はセッションの間そのままにしておく必要があることは理解していますが、途中でデータの配列を失っています。現在、3 つの Web サーブレットがあります。

  • AirportFinder:検索語に基づいて、利用可能なオプションから出発空港と目的空港をユーザーに提供します。

  • FlightConfirmation:これは、そのルートを飛行する航空会社のリストと価格を提供します。

  • BookingConfirmation:ユーザーに予約の詳細を確認するよう求めます。

現在、Bean は 1 つしかありません。

  • SearchFlights:これはステートフル Bean です。現在、データの処理を処理し、データベースを検索して結果を返します。

予約を確認しようとすると問題が発生します。ArrayList を作成し、Bean のコンストラクターでインスタンス化しました。FlightConfirmation サーブレットが情報を SearchFlights Bean に返すとき、その結果を ArrayList に追加してから、それを FlightConfirmation サーブレットに返します。

後で、BookingConfirmation サーブレットがデータを必要とするときに別のメソッドからこの ArrayList にアクセスしようとしましたが、null ポインター例外が発生し続けます。最初にデータを追加するときに ArrayList のサイズをテストすると、それは正しいです。しかし、次に ArrayList が BookingConfirmation サーブレットによってクエリされると、サイズは 0 になります。ステートフル Bean がどのように機能するかについての私の理解は間違っていますか?

SearchFlights Bean のコードは次のとおりです。

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

wicket - バージョニングせずにブックマーク可能なステートフル ページを作成するにはどうすればよいですか?

Wicket は、ページとページ リンク (afaik) のこれらの概念を提供します。

ブックマーク可能なリンクは、セッション情報に依存しません。URL には、セッション ID、バージョン番号などが含まれていない場合があります。

ステートフル ページはサーバーに保存されるため、後でセッションで使用できます (たとえば、AJAX 通信やブラウザーの戻る機能など)。ステートレス ページは、リクエストごとに常に新しく作成されます。

ページのバージョニングは、リクエストごとにページ インスタンスの 1 つのバージョンを作成し、それをセッションに保存します。各バージョンには、特定のバージョンを直接アドレス指定するためにページ リンクで使用される一意のセッション ID があります。URL は次のようになります (「8」は、このセッション内のプロファイル ページの 8 番目のバージョンを示します)。http://.../wicket7/profile?8

Wicket のドキュメントには、次の依存関係が記載されています。

  • ステートレス ページには常にブックマーク可能なリンクがあります (理にかなっています...)
  • ブックマーク不可能なリンクは、常にステートフルなページを指します (わかりました、論理的な逆...)
  • ステートフル ページには、ブックマーク可能なリンクとブックマーク不可能なリンクの両方が含まれる場合があります

ステートフル ページは常にバージョン管理されているようです。しかし、ページを保存したいがバージョン管理はしたくないという状況があると思います。さらに、バージョン ID はセッションに依存しているため、バージョン管理されたページにはブックマーク可能なリンクがないように思えます。だからこれは私の質問です:

ステートフル ページは常にバージョン管理されていますか? バージョニングをオフにして、ステートフル ページを保存し続ける良い方法はありますか?

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

java - ステートフル Web サービスを作成するには?

クライアントの状態を保持できる Web サービスを提供したいと考えています。応答にはリストのサブセットが含まれますが、完全なリストはサーバー側にとどまる必要があります。

最初のクライアント リクエストでは ID が返されます。この ID を以降のプロセスで使用して、より多くの結果を取得できます (ページネーションと同様)。

このようなステートフル Web サービスを作成するにはどうすればよいでしょうか? static HashMap<ID, List<Items>>行く方法はありますか?静的リストはスレッド間で共有されていますか (Web サービスへのすべてのクライアント要求は独自のスレッドで実行されるため)?

何かお勧めできますか?