[Seaside-dev] exception handler instance creation
James Foster
Smalltalk at JGFoster.net
Wed Feb 4 00:38:16 UTC 2009
Just to provide some closure on this issue, Seaside-GemStone-Core adds
three methods to WAExceptionHandler and it seems to work fine.
James
On Jan 6, 2009, at 11:07 AM, Julian Fitzell wrote:
> Oh, cool. Was it difficult to get working?
>
> The ANSI standard is confusing and ambiguous in places so it's not
> surprising that implementations still vary. The fact that all the
> implementations seem to require some modifications to make this work
> shows, if nothing else, that nobody else is implementing their own
> Exception Selectors, though. :)
>
> I just tried a simple test on GemStone and it looks like they will
> have to implement #try:on:do: at the moment to make it work. Though,
> from a quick glance, they may be able to tweak things so only the ANSI
> ExceptionSelector protocol is necessary.
>
> Julian
>
> On Tue, Jan 6, 2009 at 7:02 PM, John O'Keefe
> <wembley.instantiations at gmail.com> wrote:
>> Julian -
>> OK, it now works on VA Smalltalk -- at least the SUnit tests think
>> so :-)
>> You are right that many of us implementors of ANSI don't always get
>> it
>> correct. Clearly the standard separates the idea of an
>> <exceptionSelector>
>> from the various other exception protocols.
>> John O'Keefe [|], Principal Smalltalk Architect, Instantiations Inc.
>>
>>
>> On Thu, Jan 1, 2009 at 9:33 AM, Julian Fitzell <jfitzell at gmail.com>
>> wrote:
>>>
>>> Hi John,
>>>
>>> Darn... I was following the ANSI standard... ;) it says that an
>>> exception selector needs to implement #handles: and #, which we do
>>> on
>>> both the class and instance side. On most systems this would include
>>> the Exception class and instances of ExceptionSet. How does VA
>>> implement ExceptionSet if #on:do: is so restrictive?
>>>
>>> Lukas took a quick look at his VA image and says it looks like
>>> WAExceptionHandler might just need an implementation of #handles:do:
>>> added in the VA port but I don't have a Windows install handy to
>>> look
>>> myself. I added some tests in Seaside-Tests-Core-jf.32 that should
>>> help verify directly if it's working or not, though.
>>>
>>> Do you think it's a solvable problem on VA? I just looked at VW
>>> and it
>>> looks like they would need to implement #isExceptionHandler in their
>>> compatibility package.
>>>
>>> Dale, I haven't got Gemstone installed on this new laptop yet
>>> either.
>>> Do you foresee problems getting this to work on your end?
>>>
>>> Obviously if this is going to be a huge compatibility problem we
>>> should rethink but I think the implementation is cleaner this way
>>> otherwise.
>>>
>>> Julian
>>>
>>> On Wed, Dec 31, 2008 at 8:28 PM, John O'Keefe
>>> <wembley.instantiations at gmail.com> wrote:
>>>> Julian -
>>>> I'm back to work after a week and got a bad surprise.
>>>> Seaside-Core-jf.349 and the associated changes to other packages
>>>> has
>>>> completely broken the VA Smalltalk port. Our implementation of
>>>> Block>>#on:do: expects a class as its first argument (and in
>>>> particular,
>>>> the
>>>> class must be Exception or a subclass of Exception). The same
>>>> seems to
>>>> be
>>>> true of VW.
>>>>
>>>> But with Seaside-Core-jf.349 #on:do: is getting a
>>>> WAExceptionHandler
>>>> class
>>>> (or subclass of it) as the first argument <exception selector>
>>>> and then
>>>> with
>>>> Seaside-Core-jf.353 #on:do: is getting an instance of
>>>> WAExceptionHandler
>>>> (or
>>>> a subclass of it) as the first argument. In either case, we fall
>>>> over
>>>> because the WAExceptionHandler class/instance does not understand
>>>> any of
>>>> the
>>>> messages sent by #on:do: to the <exception selector>.
>>>> Since WAExceptionHandler is in the base, I assume it should be
>>>> portable.
>>>> I have reverted to Seaside-Core-lr.348 and Seaside-Development-lr.
>>>> 53 for
>>>> the
>>>> time being and things seem to be working OK again.
>>>> John O'Keefe [|], Principal Smalltalk Architect, Instantiations
>>>> Inc.
>>> _______________________________________________
>>> seaside-dev mailing list
>>> seaside-dev at lists.squeakfoundation.org
>>> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
>>
>>
>> _______________________________________________
>> seaside-dev mailing list
>> seaside-dev at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
>>
>>
> _______________________________________________
> seaside-dev mailing list
> seaside-dev at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
>
More information about the seaside-dev
mailing list