[Seaside] "remove" command
Michael
sangria at gmx.net
Sun May 22 15:50:23 CEST 2005
Hi
>>When I remove the application with the config tool (/seaside/go/config)
>>I can no longer access the config tool. The error message indicates that
>>something still tries to access the namingservice.
After hours of playing around with "self halt" I finally found
a solution for my problem.
The problem is the call to "SeasidePlatformSupport vmStatisticsReportString"
in WADispatcherEditor>>renderContentOn:. When i unregister the session I close
the connection to the naming service (RequestBroker). Unfortunately the
vmStatisticsReportString method still tries to access data that was published
in the naming service.
The only solution I found, was to remove the line from the renderContentOn
method.
>>I also noticed that clicking on the "remove" link won't call the session's
>>unregistered method.
>
> Hm, I'd say that's a bug - removing an application should unregister
> all of its sessions.
I'm still new to smalltalk, so I don't know if this solution is any good.
It seems to work but maybe I missed something.
WARegistry>>clearHandlers
self mutex critical:
["Unregister all sessions"
handlersByKey notNil
ifTrue:
[handlersByKey associationsDo: [:assoc | [assoc value unregistered] fork]].
"Remove all handlers"
handlersByKey := Dictionary new.
keysByHandler := Dictionary new]
WADispatcherEditor>>remove: anEntryPoint
dispatcher removeEntryPoint: anEntryPoint.
anEntryPoint clearHandlers.
> It would also be useful to have a reset link
> that unregistered them all without removing the app...
WADispatcherEditor>>reset: anEntryPoint
anEntryPoint clearHandlers.
Mike
More information about the Seaside
mailing list