The question is: what should you do with thrown exceptions from such a method?

I wonder if we could go further down the meta-programming path, by
introducing a method annotation to clue Tapestry in to what to do in
case of a thrown exception in the method ... and that could be
implemented as method advice provided by yet another
ComponentClassTransformWorker.  They're like potatoe chips! (Bet ya
can't each just one!)

On Mon, Feb 9, 2009 at 3:42 PM, manuel aldana <ald...@gmx.de> wrote:
> Thanks, I guess I found it:
>
> RenderPhaseMethodWorker.java line 147:
> builder.addln("catch (RuntimeException ex) { throw ex; }");
> builder.addln("catch (Exception ex) { throw new RuntimeException(ex); }");
>
> btw: all this dynamic magic is really nice from runtime-view but also really
> tough to debug :)
>
>
> Ulrich Stärk schrieb:
>>
>> This probably happens during class transformation. I'd look somewhere in
>> the o.a.t.transform packages.
>>
>> Uli
>>
>> manuel aldana schrieb:
>>>
>>> Hi,
>>>
>>> when a custom component throws a checked Exception it seems to be handled
>>> by a kind of Interceptor, but I cannot find it while debugging or looking at
>>> source code. I am sure there is some higher exception wrapping magic
>>> involved here (though I haven't found any Interceptor or AOP style
>>> wrapping)...
>>>
>>> This checked exception gets intercepted:
>>> -----
>>> class Comp{
>>>   @BeginRender
>>>   void renderMessage(MarkupWriter writer) throws Exception{
>>>       throw new CheckedException();
>>>   }
>>> }
>>> ----
>>>
>>>
>>> This unchecked exception does not get intercepted:
>>> ----
>>> class Comp{
>>>   @BeginRender
>>>   void renderMessage(MarkupWriter writer) {
>>>       throw new UncheckedException();
>>>   }
>>> }
>>> ----
>>>
>>> thanks.
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>
> --
> manuel aldana
> ald...@gmx.de
> software-engineering blog: http://www.aldana-online.de
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to