gwt服务器端到客户端

时间:2015-08-14 07:40:02

标签: gwt rpc messagebox

我的程序可以使用" fireEvent"在客户端,然后是异步回调。

但是如何从服务器端直接调用客户端功能,如" MessageBox"如果服务器执行错误/错误? (显示错误消息的消息框)

服务器端:     ABC.java

try {

//SFTP coding

} catch (JSchException e) {
System.err.println("Time out for connecting SFTP server");

//What should i put here to call MessageBoxHandler
//MessageBoxHandler(String a, String b);
//cannot call client side function in server side...
}

客户方:

public class MessageBoxHandler {

public MessageBoxHandler(String a, String b) {

    MessageBox.alert(a, b,
            new Listener<MessageBoxEvent>() {

                @Override
                public void handleEvent(MessageBoxEvent be) {
                    if (be.getButtonClicked().getItemId()
                            .equals(Dialog.OK)) {

                    //may be a action should be here , nvm
                    //i just want to show messageBox only

                    }
                }
            });

}
}

1 个答案:

答案 0 :(得分:2)

我不确定我明白你在做什么,但我不认为这是好方法。你应该做的是使用RPC(因为这是你明显使用的),而不是仅仅在服务器端捕获异常并记录错误,你应该在服务器端方法中抛出异常以在{{{ 1}}客户端RPC回调的方法。

您应该在 _Handling Excpetions 部分下查看this tutorial