問題タブ [gwt-rpc]
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.
gwt - Chrome+GWT-rpcによるブラウザ読み込みインジケーターの防止
GWTでの動作をテストするために、ajaxチャットWebアプリを作成しています。
サーバーからブラウザーへのチャットメッセージのサーバー側プッシュをシミュレートするために、XHRリクエストを実行しています。すべて正常に動作します。Chromeを除いて、バックグラウンドでのXHRリクエストのために、ブラウザに読み込みアイコン(スピナー)が表示されます。
これを回避する方法はありますか?Firefoxでテストしましたが、そのような動作は表示されません。
編集-私は解決策を見つけました。http://groups.google.com/group/google-web-toolkit/browse_thread/thread/a0330cb47e05c485?fwc=2
GWT groiupの投稿を引用する:
接続が「bodyonload()」から、つまりonModuleLoad()からすぐに行われた場合、Chromeは読み込みインジケーターを表示します。
security - GWT RPC-CSRFから保護するのに十分ですか?
更新:GWT 2.3は、XSRF攻撃と戦うためのより優れたメカニズムを導入しています。http://code.google.com/webtoolkit/doc/latest/DevGuideSecurityRpcXsrf.htmlを参照してください
GWTのRPCメカニズムは、すべてのHTTPリクエストで次のことを行います-
- 2つのカスタムリクエストヘッダー(X-GWT-PermutationとX-GWT-Module-Base)を設定します
- コンテンツタイプをtext/x-gwt-rpcとして設定します。charset = utf-8
HTTPリクエストは常にPOSTであり、サーバー側ではGETメソッドが例外をスローします(メソッドはサポートされていません)。
また、これらのヘッダーが設定されていないか、値が間違っている場合、サーバーは「おそらくCSRF?」という例外を除いて処理に失敗します。またはその効果のために何か。
質問は:これはCSRFを防ぐのに十分ですか?純粋なクロスサイトリクエストフォージェリメソッドでカスタムヘッダーを設定し、コンテンツタイプを変更する方法はありますか?
java - GWTモジュールベースとは異なるコンテキストでGWTサービスを呼び出しますか?
X-GWT-Module-Baseを備えたGWTモジュールがあり、にhttp://host:8080/foo/
ある(GWT)サービスを呼び出したいと思いますhttp://host:8080/bar/
。その理由は、たとえば、2つの異なるGWTクライアントプロジェクト間でGWTサービスを共有できるようにしたいためです。
私がこれまでに取り組んできたのは、サービスがモジュールコンテキスト内にあるかどうか、つまり、サービスインターフェイスhttp://host:8080/foo/bar
で使用して正常に機能するかどうかだけです。@RemoteServiceRelativePath("bar")
モジュールのベースURLに相対的な値しか許可されてい@RemoteServiceRelativePath
ないようです...それで、私が達成しようとしていることを達成するための他の方法はありますか?
gwt-rpc - シリアル化されたオブジェクトのメソッドをオーバーライドするときの奇妙な GWT シリアル化例外
私は GWT のシリアライズ可能なクラスを持っています。これを Foo と呼びましょう。Foo は IsSerializable を実装し、プリミティブおよびシリアライズ可能なメンバー、その他の一時的なメンバー、および引数なしのコンストラクターを持ちます。
また、RPC 通信で Foo インスタンスを使用するサービス。
これを使用する方法:
上記の場合、コードは実行中で、コールバック インスタンスの onSuccess() メソッドが実行されます。
しかし、次のように foo インスタンスで bar() メソッドをオーバーライドすると:
GWT SerializationException が発生します。
原因がよくわからないので教えてください。
gwt - ssl(https) の使用時に要求ビルダー呼び出しが返されない
私はGWTを使用しています。現在、ログイン認証には gwt-rpc を使用しています。ログインのみを目的として、ssl(https) を使用したいので、gwt-rpc を使用する代わりに、Request Builder を試して、https でサーブレットを呼び出しています。サーブレット URL でプロトコルを http として使用すると、リクエストビルダーは完全に機能し、応答はクライアント側 (onResponseReceived) に返されます。しかし、サーブレットの URL で https を使用すると、サーブレットが呼び出されますが、応答が要求ビルダーの onResponseReceived メソッドに返されません。
http の URL は次のようになります: http://localhost:8888/myproject/myservlet で、https の場合は次のようになります: https://localhost/myproject/myservlet
提案をしてください。または、それを行う他の方法はありますか。また、gwt-rpc で ssl を使用することは可能ですか。
gwt - Gwt http から発信されたページから https 経由でサーブレット/rpc を呼び出す方法
サーブレットを呼び出すか、gwt クライアントから gwt-rpc 呼び出しを行い、応答を返す方法はありますか。または、ログインの目的でのみ https 経由で RPC を呼び出します。
上記のタスクを実装する方法または回避策を提案してください
java - GWTサーバー側から通常のJavaクラスを参照する方法
EclipseGalileo用のGWTプラグインを使用してプロジェクトを構築しています。サーバーとクライアントの間でRPCを使用し終えたとき、GWTプロジェクトで非GWTプロジェクトの通常のJavaクラスを参照しようとしましたが、このクラスのオブジェクトを作成するたびに、が表示されますClassNotFoundException
。GWTプロジェクトのビルドパスを実行しましたが、それでも同じ例外が発生します。それを機能させる方法はありますか?
gwt - Guice と GWT の問題 - GWT.rpc が見つかりません
シンプルなサービスでシンプルな連絡先管理アプリを作成しましたが、うまくいきました。次に、サービスと実装の管理に Guice を使用することにしました。MVP デザイン パターンには mvp4g プラグインも使用します。Eric Burke のブログの例をたどったところ、私のコードは次のようになりました:
ContactService.java
ContactServletModule.java:
MyGuiceContextListener.java
しかし、アプリを起動して listContacts() を呼び出して連絡先を一覧表示しようとすると、Tomcat から GWT RPC が見つからないことが通知されます (正確には、要求されたリソース (/YuriContactManager/org.yuri.ContactManager/GWT.rpc) は利用できません。) 私の web.xml は次のようになります。
誰もが同様の問題を抱えていましたか、何が間違っているのか考えていますか?
java - GWT:RPCを使用したデータストアからのページの入力が遅すぎる
データストアからロードされたデータから生成されたGWTのUI要素を使用してページの作成を高速化する方法はありますか?ページの読み込み時に不要なRPC呼び出しを行わないようにすることはできますか?
私が経験している問題の詳細:データストアからロードされたエンティティのリストの名前とボタンを含むテーブルを生成するページがあります。ページのエントリポイントがあり、そのonModuleLoad()で次のようにします。
これは機能しますが、300人の候補者のボタンを含むページをロードするのに30秒以上かかります。これは受け入れがたい。
アプリはGoogleAppEngineで実行されており、アプリエンジンのデータストアを使用しています。
java - GAE デプロイメントに外部クラスを含める方法は?
Eclipse 用の Google プラグインを使用していますが、次の問題があります。
プロジェクト (A) は、GAE 上で実行され、JPA を使用するサーバーと対話する GWT ベースの GUI で構成されています。さらに、レガシー データを新しいデータストアに移行するためのプロジェクト (B) があります。これらの両方のプロジェクトは共通のデータ モデルを使用するため、インターフェイスと列挙型のセットを別のプロジェクト (C) に抽出し、他の 2 つのプロジェクトの依存関係をそれに設定しました。
Java アプリ プロジェクト (B) は機能しているようですが、GWT/GAE プロジェクト (A) は、クラスを手動で WEB-INF/classes ディレクトリにコピーした場合にのみ機能します。明らかに、これはホストされたモードを使用している場合にのみ機能します。
Eclipseでこのようなマルチプロジェクト設定を構成する方法を知っている人はいますか?
また、マルチ プロジェクト レイアウトが最適なソリューションであるかどうかもわかりません。共通のモデル オブジェクトのセットは、次の 3 つの領域すべてで使用されます。
- ユーザー クライアント (クライアントと共有の標準フォルダーをコンパイルする GWT プロジェクト)
- サーバー側 (GWT-RPC、アップロード、およびさまざまなフィードのサービスを提供)
- 移行アプリケーション (レガシー データをアップロード サーブレットにポストする)
重複するクラスの量を最小限に抑えるためのアーキテクチャ オプションは何ですか?