問題タブ [gwt-places]
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.
java - GWT onModuleLoad について
見よ、私の最初の GWT アプリのEntryPoint
実装:
いくつかの質問:
placeHistoryHandler
のメソッドへの私の呼び出しregister(...)
は非推奨として表示されます。なぜ非推奨なのですか? (GWT 2.5.1 の時点で) どうあるべきですか?RootPanel
モジュールごとEntryPoint
に 1 つありますか、またはRootPanel
GWT アプリごとに 1 つだけですか (モジュールの数に関係なく)?mainPanel
自体が に追加された (上記)RootPanel
と、各メソッドAcceptsOneWidget
に渡されるの間の接続/関係は何ですか?AbstractActivity#start
gwt - SAML トークン認証の一部として失われた URL フラグメント。回避策/標準パターン?
いくつかの Web アプリケーション認証プロトコル (WS-Federation や SAML プロトコル、いわゆる「パッシブ」プロトコル、および明らかに ASP.NET フォーム認証も同様です。この StackOverflow questionを参照してください。AppEngine は、この GWT バグ コメントを参照してください)元の「URL フラグメント」、つまり # 記号の後の部分。
おおよそ次のようになります: クリーンなブラウザー (キャッシュされた情報/クッキー/ログイン情報はありません) で、URL (1) http://example.com/myapp/somepage?some=parameter#somewhereを開きます。これにより、ブラウザー リクエスト (2) http://example.com/myapp/somepage?some=parameterが作成され、サーバーが ID プロバイダー (認証リクエストに URL (2) を含む) にリダイレクトし、最終的にリダイレクトされます。元の場所に戻ります。これは URL (2) です。サーバーが認識している唯一の URL です。しかし、私は URL (1) に行きたかったのですが、URL フラグメント (「アンカー」) は途中で失われてしまいました。実際には、最初のステップですでにです。
サーバーは URL フラグメントをまったく認識しないため、これはこれらのプロトコルの根本的な制限のようです。
(1) に移動すると、ブラウザーがサーバーから (2) を要求する仕様によると、SAML プロトコル、WS-Federation などでこのフラグメント損失制限が発生することがわかっています。この制限を回避できますか?
明らかな回避策は、この回答で提案されているように、URL フラグメントを避けることです。ただし、特定の Web アプリケーションの場合は、シングルページ GWT アプリケーションでブックマーク可能な URL フラグメントを使用して、アプリケーション内のナビゲーションによってページがリロードされないようにするため、適切ではありません。
私の質問: この状況には、他にどのような回避策または標準パターンがありますか?
(特に GWT + SAML プロトコル ソリューションに興味があります。)
gwt - GWT アクティビティと場所: モーダル ダイアログの再利用?
私は GWT のアクティビティと場所について理解を深めようとしています。また、特定の機能を実装する方法がわかりません。
ここで、私も MVP を使用しており、アクティビティがプレゼンターであると仮定しましょう。
顧客のリストを表示するアクティビティ (アクティビティ A と呼びましょう) (およびそれに対応するビュー) があるとします。ユーザーはビューで「顧客の作成」ボタンをクリックできます。
私がやりたいことはこれです:ユーザーがボタンをクリックしたときに、現在のアクティビティの上に「顧客の作成」ダイアログがポップアップするようにします。また、このダイアログに関連するすべてのロジックを分離して、後で再利用できるようにしたいと考えています。
たとえば、同じダイアログを「請求書の作成」アクティビティで再利用できます。したがって、ユーザーは「請求書の作成」アクティビティで同様の「顧客の作成」ボタンをクリックすると、以前に使用したものと同じダイアログが表示されます。
今、私がそれを正しく理解していれば、現在のアクティビティ「顧客のリスト」または「請求書の作成」を終了するため、新しい場所に goTo() したくありません。
「CreateCustomerPresenter」と「CreateCustomerDialog」(対応するビュー) を定義し、「顧客のリスト」/「請求書の作成」アクティビティ (リマインダー: 彼らは私のプレゼンターでもあります) を「CreateCustomerPresenter」に拡張することを考えました。 、しかし、それが賢明な考えかどうかはわかりません...
アクティビティのコンテキストでダイアログに関連付けられたロジックとビューを再利用するための推奨される方法は何ですか?
gwt - IE 11 の問題を解決するための最新の SmartGWT 4.1
プロジェクトの作成に smartgwt 3.0 を使用しています。ただし、この smartgwt バージョンでは、IE11 での UI の問題に直面しています。調査の結果、smartgwt のバージョンが古いことが原因であることがわかりました。
pom.xml
smartgwt 3.0 の代わりにsmartGWT 4.1 を使用しようとしました。しかし、smartGwt 4.1 を使用しているときに、次の問題に直面しています。
プロジェクトの目標を実行できませんでした: プロジェクトの依存関係を解決できませんでした: 次の成果物を解決できませんでした: com.smartgwt:smartgwt:jar:4.1 com.smartgwt:smartgwt-skins:jar:4.1 com.smartgwt:smartgwt が見つかりませんhttp://www.smartclient.com/maven2の:jar:4.1 がローカル リポジトリにキャッシュされました。com.smartgwt の更新間隔が経過するか、更新が強制されるまで、解決は再試行されません。
問題を解決する方法を教えてください
gwt - GWTP で動的テーブルを作成する方法
私は新しい GWTP ユーザーですが、GWTP でテーブルを作成する方法がわかりません。GWTで作成する方法を知っています。
しかし、これは GWTP では機能しないようです。誰かがGWTPプログラムでボタンを押して値を取得するのを手伝ってくれますか?
gwt - CachingActivityMapper のポイントは何ですか?
は、同じアクティビティ インスタンスを2 回以上CachingActivityMapper
要求すると、同じアクティビティ インスタンスを返します。Place
ただし、現在の場所と同じ場所にいた場合、 a は起動しませPlaceController
んPlaceChangeRequestEvent
(最終的には no PlaceChangeEvent
) goTo(...)
。その結果、ActivityManager
これらのイベントをリッスンしても何も実行されません。つまりCachingActivityMapper
、この場合、アクティビティを要求することさえありません。
だから、私は本当にのポイントがわかりませんCachingActivityMapper
。何か不足していますか?
gwt - GWT トークナイザー: URL の変更方法
アクティビティとプレイスを使用しています。
ログインプレイスがあります。
その場所に移動したときに表示される URL には、最後に次のようなものがあります。
これを #login などに変更するにはどうすればよいですか?
私のトークナイザーは次のようになります。
LoginPlace へのナビゲーションは、PlaceController を介して行われます。
URL のフォーマットはどこで操作できますか?
gwtp - GWTP アプリケーションの初期化/開始時にコードを実行する方法
アプリケーションの起動時にサーバーへの非同期呼び出しを実行したい (ユーザーのブラウザーに読み込まれている)。
サーバーと通信するには、RestyGWT を使用します。
アプリケーションの起動時にサーバーを呼び出して、ユーザーがログインしているかどうかを確認します (彼の Cookie/トークンはまだ有効ですか)? トークンがまだ有効な場合は、ログインしているユーザーのページにユーザーをリダイレクトしたいと思います。login
そうでない場合は、ページにリダイレクトしたい
たとえば、クライアントアプリの urls 内でもこれを機能させたいと思いますhttp://localhost:8080/cms/#/admin
。アプリ内からこの URL を入力すると、機能します。この URL を入力すると、デフォルトのページにリダイレクトされます。
助けてください。
これが私のサービス実行コードです:
クラスコンストラクターの AppPresenter でこれを行いましたが、これは間違っていると思います。