我在使用GWTP的Gatekeeper功能时遇到问题.按照示例gwtp-sample-tab我创建了客户端代码.但现在我仍然想知道如果用户已成功登录,如何通知客户端?(我正在使用Google UserService.)
有人可以给我一个小小的例子吗?
非常感谢你!
我是gwt的新手,我正在使用gwt创建一个登录页面,我需要有关会话管理的帮助.
这里已经给出了所有答案,解释了如何在服务器端管理会话,我需要在客户端使用会话(浏览器会话),就像使用JSP文件一样:
session.setAttribute("UserName", username);
任何人都可以提供一个明确的完整示例来说明如何实现这一点(请记住我是gwt的新手).我查看了本教程:http: //code.google.com/p/google-web-toolkit-incubator/wiki/LoginSecurityFAQ 这对我没有帮助,因为它没有解释如何使用浏览器的会话.
谢谢.
在我的GWT-Platform应用程序中,我实现了一种方法,其中一步是从服务器获取数据,下一步是依赖于它.我想阻止我的方法进一步执行代码,直到异步调用完成.
应该是简单的东西,但我找不到方法.
我正在尝试将我在演示者上加载的参数传递给另一个演示者,例如来自某个客户端的汽车.
最好的方法是什么?使用看门人?任何例子?
PS:我使用DI和杜松子酒以及GWT-Platform框架.
我正在使用GWT(GW的MVP框架)和GWT 2.3.我想与我的演示者一起使用GWT代码分割.
我知道@ProxyCodeSplit演示者中的注释.如下
@ProxyCodeSplit
@UseGatekeeper(LoggedInGatekeeper.class)
public interface MyProxy extends Proxy<MainPagePresenter> {
}
Run Code Online (Sandbox Code Playgroud)
这够了吗?或者我是否需要挖掘出A call to GWT.runAsync类似于此处的 GWT Code Splitting
我是GWT,GWTP的新手。
我有一个PresenterWidget,该实例被实例化多次并添加到插槽中。我想以编程方式定义实例的数量。我只知道我通过注入来创建窗口小部件的新实例。
@Inject MyWidgetPresenter first;
@Inject MyWidgetPresenter second;
// ...
Run Code Online (Sandbox Code Playgroud)
我可以用new实例化它吗?如何实例化视图?
我试图使用复合材料,因为它似乎是最聪明的解决方案,因为它无论如何都没有太多逻辑。但是我无法向插槽添加复合材料。
提前致谢
当我的Presenter被显示时,我必须进行RPC调用.该调用导致String []具有大量数据.但是这个电话非常慢.完成大约需要1分钟.
经过一些测试,我发现ListBox.addItem()占用了这个调用的30%.这是在该Widget上添加String的巨大时间.
我该怎么办才能最大限度地缩短这段时间
假设我需要在我的Presenter显示时加载所有内容.
我已经完成的事情:
我注意到GWT设计了一个LightweightCollections来改善客户端集合的使用(这是我的下一步).
但是我能对ListBox做些什么呢?
我有一个子演示者(添加到插槽中的父节点),eventBus在onBind()调用时通过(在条件下)触发事件:
class ChildPresenter extends PresenterWidget<?> {
void onBind() {
instance = initMyInstance();
if (instance == null) {
eventBus.fireEvent(new MyEvent());
}
}
//...
}
Run Code Online (Sandbox Code Playgroud)
在父级上,我在onBind()方法中处理事件,如下所示:
class ParentPresenter extends Presenter<..>{
void onBind() {
eventBus.addHandler(MyEvent.TYPE, new MyEventHandler() {...} );
}
}
Run Code Online (Sandbox Code Playgroud)
我也试过这个父:addRegisteredHandler(LoggedOutEvent.TYPE, this)和 addVisibleHandler(...)太,在这里我实现MyEventHandler父演示接口,但它不处理触发的事件.
我做错了吗?我也注意到当我将处理过程移动到onReveal()我的父母演示者的方法时,它工作了两次!!