Author: jlaba...@google.com
Date: Fri Feb 27 10:43:54 2009
New Revision: 4897

Modified:
    releases/1.6/user/src/com/google/gwt/user/tools/AppClassTemplate.javasrc
    releases/1.6/user/src/com/google/gwt/user/tools/AppCss.csssrc

Log:
Updated webAppCreator to include a much better error handling message when  
an RPC error occurs.

Patch by: jlabanca
Review by: bruce
Issue: 3395



Modified:  
releases/1.6/user/src/com/google/gwt/user/tools/AppClassTemplate.javasrc
==============================================================================
---  
releases/1.6/user/src/com/google/gwt/user/tools/AppClassTemplate.javasrc        
 
(original)
+++  
releases/1.6/user/src/com/google/gwt/user/tools/AppClassTemplate.javasrc        
 
Fri Feb 27 10:43:54 2009
@@ -7,7 +7,6 @@
  import com.google.gwt.event.dom.client.KeyCodes;
  import com.google.gwt.event.dom.client.KeyUpEvent;
  import com.google.gwt.event.dom.client.KeyUpHandler;
-import com.google.gwt.user.client.Window;
  import com.google.gwt.user.client.rpc.AsyncCallback;
  import com.google.gwt.user.client.ui.Button;
  import com.google.gwt.user.client.ui.DialogBox;
@@ -21,6 +20,13 @@
   * Entry point classes define <code>onModuleLoad()</code>.
   */
  public class @moduleShortName implements EntryPoint {
+  /**
+   * The message displayed to the user when the server cannot be reached or
+   * returns an error.
+   */
+  private static final String SERVER_ERROR = "An error occurred while "
+      + "attempting to contact the server. Please check your network "
+      + "connection and try again.";

    /**
     * Create a remote service proxy to talk to the server-side Greeting  
service.
@@ -103,11 +109,17 @@
          serverResponseLabel.setText("");
          greetingService.greetServer(textToServer, new  
AsyncCallback<String>() {
            public void onFailure(Throwable caught) {
-            Window.alert("Rpc failure");
-            sendButton.setEnabled(true);
+            // Show the RPC error message to the user
+            dialogBox.setText("Remote Procedure Call - Failure");
+            serverResponseLabel.addStyleName("serverResponseLabelError");
+            serverResponseLabel.setHTML(SERVER_ERROR);
+            dialogBox.center();
+            closeButton.setFocus(true);
            }

            public void onSuccess(String result) {
+            dialogBox.setText("Remote Procedure Call");
+             
serverResponseLabel.removeStyleName("serverResponseLabelError");
              serverResponseLabel.setHTML(result);
              dialogBox.center();
              closeButton.setFocus(true);

Modified: releases/1.6/user/src/com/google/gwt/user/tools/AppCss.csssrc
==============================================================================
--- releases/1.6/user/src/com/google/gwt/user/tools/AppCss.csssrc       
(original)
+++ releases/1.6/user/src/com/google/gwt/user/tools/AppCss.csssrc       Fri Feb 
 
27 10:43:54 2009
@@ -24,6 +24,10 @@
    margin: 5px;
  }

+.serverResponseLabelError {
+  color: red;
+}
+
  /** Set ids using widget.getElement().setId("idOfElement") */
  #closeButton {
    margin: 15px 6px 6px;

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to