1

私はgwtpの初心者で、製品のリストを表示するアプリケーションを構築したいと考えています.クリックすると、選択した製品の詳細が表示されます.セキュリティ対策のため、リクエストで製品の ID を渡したくありません。ID をセッションに保存することを考えましたが、RPC の応答時間が長いため、アプリケーションのパフォーマンスに影響するかどうかはわかりません。

これに関するヘルプまたは説明をいただければ幸いです。

4

2 に答える 2

0

GWTのCookieサポートの使用を検討することもできます。適切に実装すれば、彼らが最後に何をしていたかを常に正確に知ることができ、彼らをそこに戻すことが容易になります。Cookieは明​​らかにクライアント側であるため、RPCよりも常に高速になります。

于 2012-02-14T18:33:13.280 に答える
0

いくつかのアドバイスがありますが、私もGWTPにかなり慣れていないことに注意してください....

安全

通信は SSL/HTTPS 経由で行う必要があります。サーブレット コンテナー ( web.xml )を使用してアプリ全体に配置し、アプリの GWT 以外の部分とシームレスに統合できるようにしました。

「id」を url に入れることに問題はありません。PlaceManager.revealPlace(PlaceRequest, boolean)を使用して、アドレスバーに表示されないようにすることができます。

構成ビュー

左側にエンティティのリストがあり、右側に編集フォームがあるビューがあります。リストは常に表示され、親プレゼンターによって明示的に「スロット」に配置されます。

public class Users extends Presenter<Users.View, Users.Proxy> {
@ContentSlot
public static final GwtEvent.Type<RevealContentHandler<?>> LIST_SLOT = new GwtEvent.Type<RevealContentHandler<?>>();
@ContentSlot
public static final GwtEvent.Type<RevealContentHandler<?>> FORM_SLOT = new GwtEvent.Type<RevealContentHandler<?>>();
@Inject
private UserList userList;

@Inject
public Users(EventBus eventBus, View view, Proxy proxy) {
    super(eventBus, view, proxy, Configuration.SLOT);
}

@Override
protected void onReveal() {
    super.onReveal();
    setInSlot(LIST_SLOT, userList);
}
...

私のアプリには、リスト項目が選択されていないときにデフォルトで表示される「空のフォーム」プレゼンターがあります。これにより、リストと親プレゼンターが「場所」になることを防ぎます (トークンが必要です)。プレゼンター階層のリーフ プレゼンターのみが「場所」になる必要があります。

于 2013-06-17T00:54:02.820 に答える