<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: Global Error Handling in Flex</title>
	<atom:link href="http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/</link>
	<description>Summa Blog</description>
	<pubDate>Wed, 08 Feb 2012 05:03:03 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Avier5</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-3071</link>
		<dc:creator>Avier5</dc:creator>
		<pubDate>Tue, 08 Mar 2011 15:19:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-3071</guid>
		<description>regarding catching errors from modules: few open bugs on it on Adobe's bugzilla, please look for them and vote!!! We need this fix ASAP!</description>
		<content:encoded><![CDATA[<p>regarding catching errors from modules: few open bugs on it on Adobe&#8217;s bugzilla, please look for them and vote!!! We need this fix ASAP!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Gray</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2962</link>
		<dc:creator>Brian Gray</dc:creator>
		<pubDate>Mon, 20 Dec 2010 16:43:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2962</guid>
		<description>@smithfox, I have not used this error handling solution across multiple modules.  If you figure something out, please post back here and let me know how you got it to work!</description>
		<content:encoded><![CDATA[<p>@smithfox, I have not used this error handling solution across multiple modules.  If you figure something out, please post back here and let me know how you got it to work!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: smithfox</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2950</link>
		<dc:creator>smithfox</dc:creator>
		<pubDate>Tue, 14 Dec 2010 05:36:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2950</guid>
		<description>Hello Brain,

I use your solution and FP10.1 loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR, uncaughtErrorHandler);

But all of them can not catch the Error from a Module.

Do you have some idea about that?</description>
		<content:encoded><![CDATA[<p>Hello Brain,</p>
<p>I use your solution and FP10.1 loaderInfo.uncaughtErrorEvents.addEventListener(UncaughtErrorEvent.UNCAUGHT_ERROR, uncaughtErrorHandler);</p>
<p>But all of them can not catch the Error from a Module.</p>
<p>Do you have some idea about that?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Gray</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2851</link>
		<dc:creator>Brian Gray</dc:creator>
		<pubDate>Fri, 19 Nov 2010 16:17:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2851</guid>
		<description>@Marcus, your point is well-taken.  In FP10, it seems like you can handle &lt;a href="http://www.rialvalue.com/blog/2010/05/13/global-exception-or-error-handling-in-flex/" rel="nofollow"&gt;any uncaught exception&lt;/a&gt;.  But prior to that version (using FP9 and Flex 3.5, as I am here), the best you can do is handle callLater exceptions.

In a typical application, those will be the majority use case.  Most of your heavy-lifting logic will be in handlers that are in RPC calls or similar calls that will be in some ways invoked in a callLater-fashion.  But I agree-it is not the best solution.  If you are on FP10, use the above link.</description>
		<content:encoded><![CDATA[<p>@Marcus, your point is well-taken.  In FP10, it seems like you can handle <a href="http://www.rialvalue.com/blog/2010/05/13/global-exception-or-error-handling-in-flex/" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://www.rialvalue.com/blog/2010/05/13/global-exception-or-error-handling-in-flex/');" rel="nofollow">any uncaught exception</a>.  But prior to that version (using FP9 and Flex 3.5, as I am here), the best you can do is handle callLater exceptions.</p>
<p>In a typical application, those will be the majority use case.  Most of your heavy-lifting logic will be in handlers that are in RPC calls or similar calls that will be in some ways invoked in a callLater-fashion.  But I agree-it is not the best solution.  If you are on FP10, use the above link.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcus</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2849</link>
		<dc:creator>Marcus</dc:creator>
		<pubDate>Fri, 19 Nov 2010 06:41:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2849</guid>
		<description>catchCallLaterExceptions property 

catchCallLaterExceptions:Boolean  [read-write]
A global flag that can is used to catch unhandled exceptions during execution of methods executed via callLater 

So, if there's a error occured not in calllater function, then handleErrors above will not execute.
so, to catch and handle global errors througth catchCallLaterExceptions is not a smart way.</description>
		<content:encoded><![CDATA[<p>catchCallLaterExceptions property </p>
<p>catchCallLaterExceptions:Boolean  [read-write]<br />
A global flag that can is used to catch unhandled exceptions during execution of methods executed via callLater </p>
<p>So, if there&#8217;s a error occured not in calllater function, then handleErrors above will not execute.<br />
so, to catch and handle global errors througth catchCallLaterExceptions is not a smart way.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Gray</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2735</link>
		<dc:creator>Brian Gray</dc:creator>
		<pubDate>Wed, 06 Oct 2010 14:33:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2735</guid>
		<description>Hi Agraj,

As Jimmy" Gianninas &lt;a href="http://jimmyflex.blogspot.com/2007/11/dont-forget-power-of-calllater.html" rel="nofollow"&gt;points out&lt;/a&gt;, every Flex movie is made up of only two frames, one for initialization and one in which the application executes.  The latter is redrawn many times per second -- some Flex APIs have immediate effects and others have effects on later refreshes.

callLater() allows you to queue up a method to be called on the next screen refresh.  It is often used to wait until some UI work can be done.  In this demo, I use it to separate the error from the click handler.

This article from Adobe has more examples:
http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7b06.html</description>
		<content:encoded><![CDATA[<p>Hi Agraj,</p>
<p>As Jimmy&#8221; Gianninas <a href="http://jimmyflex.blogspot.com/2007/11/dont-forget-power-of-calllater.html" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://jimmyflex.blogspot.com/2007/11/dont-forget-power-of-calllater.html');" rel="nofollow">points out</a>, every Flex movie is made up of only two frames, one for initialization and one in which the application executes.  The latter is redrawn many times per second &#8212; some Flex APIs have immediate effects and others have effects on later refreshes.</p>
<p>callLater() allows you to queue up a method to be called on the next screen refresh.  It is often used to wait until some UI work can be done.  In this demo, I use it to separate the error from the click handler.</p>
<p>This article from Adobe has more examples:<br />
<a href="http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7b06.html" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7b06.html');" rel="nofollow">http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7b06.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Agraj</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2734</link>
		<dc:creator>Agraj</dc:creator>
		<pubDate>Tue, 05 Oct 2010 06:49:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2734</guid>
		<description>Hi Brian,

Thanks for the tip.  With the understanding that "there is no way to catch it on the initiating thread" I'm able to call my error handler using callLater method. :-)

I would highly appreciate if you point me to some resources regarding different use cases of callLater() 

Regards</description>
		<content:encoded><![CDATA[<p>Hi Brian,</p>
<p>Thanks for the tip.  With the understanding that &#8220;there is no way to catch it on the initiating thread&#8221; I&#8217;m able to call my error handler using callLater method. <img src='http://www.summa-tech.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>I would highly appreciate if you point me to some resources regarding different use cases of callLater() </p>
<p>Regards</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Gray</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2613</link>
		<dc:creator>Brian Gray</dc:creator>
		<pubDate>Wed, 02 Jun 2010 21:52:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2613</guid>
		<description>Hi Agraj,

Are you able to run the demo to get the desired effect?

It may be an issue with where the errors are originating from. &lt;a href="http://www.asserttrue.com/articles/2006/10/17/no-try-catch-from-eventdispatchers-in-actionscript-3-0" rel="nofollow"&gt;This post&lt;/a&gt; finds that if an error is thrown by an event dispatcher, there is no way to catch it on the initiating thread.  That is why, in my demo, I use this click handler:

&lt;code&gt;click="callLater(throwError)"&lt;/code&gt;

Instead of:

&lt;code&gt;click="throwError()"&lt;/code&gt;

Typically in a large MVC application, this is not an issue, as the handlers are very simple and just dispatch events.  Most frameworks (Mate, Cairngorm, etc.) encourage this pattern.  However there are certainly times where this is not the case and care has to be taken to ensure that the exception code will be in the callLater queue.</description>
		<content:encoded><![CDATA[<p>Hi Agraj,</p>
<p>Are you able to run the demo to get the desired effect?</p>
<p>It may be an issue with where the errors are originating from. <a href="http://www.asserttrue.com/articles/2006/10/17/no-try-catch-from-eventdispatchers-in-actionscript-3-0" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://www.asserttrue.com/articles/2006/10/17/no-try-catch-from-eventdispatchers-in-actionscript-3-0');" rel="nofollow">This post</a> finds that if an error is thrown by an event dispatcher, there is no way to catch it on the initiating thread.  That is why, in my demo, I use this click handler:</p>
<p><code>click="callLater(throwError)"</code></p>
<p>Instead of:</p>
<p><code>click="throwError()"</code></p>
<p>Typically in a large MVC application, this is not an issue, as the handlers are very simple and just dispatch events.  Most frameworks (Mate, Cairngorm, etc.) encourage this pattern.  However there are certainly times where this is not the case and care has to be taken to ensure that the exception code will be in the callLater queue.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Agraj</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2611</link>
		<dc:creator>Agraj</dc:creator>
		<pubDate>Mon, 31 May 2010 11:03:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2611</guid>
		<description>Hi Brian,

Thanks, I was looking for exactly the same thing.

However, this technique is not working in my project and I have no wild idea why is it so ?

In case of an error, the control never reaches the error handler. :(

Any ideas ?

Regards</description>
		<content:encoded><![CDATA[<p>Hi Brian,</p>
<p>Thanks, I was looking for exactly the same thing.</p>
<p>However, this technique is not working in my project and I have no wild idea why is it so ?</p>
<p>In case of an error, the control never reaches the error handler. <img src='http://www.summa-tech.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>Any ideas ?</p>
<p>Regards</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Gray</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2478</link>
		<dc:creator>Brian Gray</dc:creator>
		<pubDate>Wed, 03 Mar 2010 22:22:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2478</guid>
		<description>@chandra: Thanks!  Seems like the link is working now.  Let me know if you still have trouble with it.</description>
		<content:encoded><![CDATA[<p>@chandra: Thanks!  Seems like the link is working now.  Let me know if you still have trouble with it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: chandra shekhar</title>
		<link>http://www.summa-tech.com/blog/2010/01/04/global-error-handling-in-flex/comment-page-1/#comment-2394</link>
		<dc:creator>chandra shekhar</dc:creator>
		<pubDate>Sat, 09 Jan 2010 10:05:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.summa-tech.com/blog/?p=1554#comment-2394</guid>
		<description>Nice article.
"Download the full demo" link not working</description>
		<content:encoded><![CDATA[<p>Nice article.<br />
&#8220;Download the full demo&#8221; link not working</p>
]]></content:encoded>
	</item>
</channel>
</rss>

