Revision: 9557
Author: fre...@google.com
Date: Fri Jan 14 16:09:06 2011
Log: Edited wiki page WebModeExceptions through web user interface.
http://code.google.com/p/google-web-toolkit/source/detail?r=9557

Modified:
 /wiki/WebModeExceptions.wiki

=======================================
--- /wiki/WebModeExceptions.wiki        Tue Nov 30 10:28:21 2010
+++ /wiki/WebModeExceptions.wiki        Fri Jan 14 16:09:06 2011
@@ -107,3 +107,52 @@
* The method `GWT.getPermutationStrongName()` and the associated `$strongName` variable have been added to allow permutations to identify themselves at runtime. * `RemoteServiceServlet` also provides a `getPermutationStrongName()` method, which provides the requesting client's permutation strong name for the current RPC. * A utility class `HttpThrowableReporter` has been provided to send JSON-formatted representations via HTTP requests.
+
+
+= Example Production Mode stack traces without emulation =
+The amount of built-in support for native stack traces differs greatly by browser. To demonstrate this, set an `UncaughtExceptionHandler` to examine the exception thrown in Production Mode (compiled with `-style OBFUSCATED`) by the following snippet:
+{{{
+  String s = null;
+  s.length();
+}}}
+
+== Sample results: Firefox 3.6.13 ==
+|| *Property* || *Value* ||
+|| Exception Class || `com.google.gwt.core.client.JavaScriptException` ||
+|| Message || `(TypeError): null has no properties` ||
+|| `lineNumber` || `657` ||
+|| `stack` || `aM()@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:657`<br>`ll([object Array],[object Array])@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:600`<br>`bl([object Object])@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:475`<br>`ql()@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:654`<br>`hl([object Object])@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:228`<br>`Rk(hl,[object XPCCrossOriginWrapper],[object Object])@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:612`<br>`([object Object])@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:456`<br>`(3)@http://127.0.0.1:8888/stackdump/71307A90B78B5C9E2B2ADEFF5EE31AF0.cache.html:517` ||
+
+== Sample results: Safari 5.0.3 ==
+|| *Property* || *Value* ||
+|| Exception Class || `com.google.gwt.core.client.JavaScriptException` ||
+|| Message || `(TypeError): Result of expression 'null' [null] is not an object.` ||
+|| `line` || `669` ||
+|| `sourceId` || `4665371256` ||
+|| `sourceURL` || `http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html` ||
+|| `expressionBeginOffset` || `9137` ||
+|| `expressionCaretOffset` || `9141` ||
+|| `expressionEndOffset` || `9144` ||
+|| Stack Trace || <no native stack trace information> ||
+
+== Sample results: Chrome 9 ==
+|| *Property* || *Value* ||
+|| Exception Class || `com.google.gwt.core.client.JavaScriptException` ||
+|| Message || `(TypeError): Cannot call method 'tb' of null` ||
+|| `type` || `non_object_property_call` ||
+|| `arguments` || `tb,` ||
+|| `stack` || `TypeError: Cannot call method 'tb' of null`<br>` at Object.YM [as A] (http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:669:9138)`<br>` at rl (http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:614:103)`<br>` at hl (http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:487:60)`<br>` at Object.wl [as R] (http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:666:19024)`<br>` at nl (http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:236:25)`<br>` at Xk (http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:623:61)`<br>` at http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:472:45`<br>` at http://127.0.0.1:8888/stackdump/EB4A0B3EC0DB33BFD6A62912052DC4D6.cache.html:528:65` ||
+
+== Sample results: Internet Explorer 6/7/8 ==
+|| *Property* || *Value* ||
+|| Exception Class || `com.google.gwt.core.client.JavaScriptException` ||
+|| Message || `(TypeError): 'null' is null or not an object` ||
+|| `number` || `-2146823281` ||
+|| `description` || `'null' is null or not an object` ||
+|| Stack Trace || <no native stack trace information> ||
+
+== Sample results: Opera 11.0 ==
+|| *Property* || *Value* ||
+|| Exception Class || `com.google.gwt.core.client.JavaScriptException` ||
+|| Message || `(TypeError): Cannot convert 'null' to object` ||
+|| Stack Trace || <no native stack trace information> ||

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

Reply via email to