Hi,
One of my apps is very rarely having issues when answering.
The message is "MessageNotUnderstood: MyComponentOrTask>>owner in:
OtherMyComponentOrTask(WAComponent)>>removeDecoration:
Unfortunately, no matter how hard I try, I cannot reproduce this error..
however I have stepped through the debugger when it does happen, and I
have noticed that the chain of decorations has, what I believe to be, an
incorrect value - and that is one of the WADecoration has the iVar value
for "next" as a WAValueHolder, and not a WAAnswerHandler as the others are.
Is this a known issue, or would you like me to investigate further? (My
knowledge on this area of Seaside is absolutely miminal..)
Many thanks,
John
--
John Thornborrow
http://www.pinesoft.co.uk
******************************************************************************************************************************************
This email is from Pinesoft Limited. Its contents are confidential to the intended recipient(s) at the email address(es) to which it has been addressed. It may not be disclosed to or used by anyone other than the addressee(s), nor may it be copied in anyway. If received in error, please contact the sender, then delete it from your system. Although this email and attachments are believed to be free of virus, or any other defect which might affect any computer or IT system into which they are received and opened, it is the responsibility of the recipient to ensure that they are virus free and no responsibility is accepted by Pinesoft for any loss or damage arising in any way from receipt or use thereof. *******************************************************************************************************************************************
Pinesoft Limited are registered in England, Registered number: 2914825. Registered office: 266-268 High Street, Waltham Cross, Herts, EN8 7EA
Abstract
We want to move a lot of responsibility that is currently in WASession
and not global to the session (request, response, loadScripts, etc) to
a newly created WAContext object.
Problem
If we have a look of at WASession there is a lot of functionality that
does not belong there. #returnResponse: and #currentRequest are just a
few examples. Additionally we have quite a few bugs [1] [2] [3] [4]
[5] [6] that are hard to fix because we are hitting architecture
limits of Seaside. The most common symptom is that we don't have
information about things like request handlers where we need it.
WAContext Solution
The result of our todays experiments can be found in
Seaside-Core-lr.110. A WAContext object that provides us with all the
contextual information that we need:
- the server, this is important for encoding especially it would allow
us to do URL encoding for non-ASCII characters in a way that works
independently of encoding settings
- the current request
- the current response, for stacking up cookies for example
- a collection of request handlers, important for URL parsing
- subscribers, for events like returning a response or rendering a component
- properties for additional values like load scripts or the anchor name
While delegating the processing requests request handlers would
incrementally add themselves to the collection of request handlers. If
the example of /seaside/tests/alltests two dispatchers, an application
and a session.
Problem with the Solution
Currently used a dynamic variable to store the current context. That
works fine as long as no continuations are involved. Actually the
WAContext is unique to every request and should not be restored when a
continuation is resumed. For a short moment we considered
thread-locals but they again wouldn't work either because
WAProcessMointor creates a new process. The next idea was to use
partial continuations with a boundary that is below the dynamic
variable that points to the current context.
Consequences
- we would lose the terminate functionality
- ports would have to provide partial continuations, this might be a
problem for some platforms whose continuation implementation differs
substantially from Squeak
Does anybody see problems with providing partial continuations on his
platform? Does anybody see a better solution?
[1] http://code.google.com/p/seaside/issues/detail?id=13
[2] http://code.google.com/p/seaside/issues/detail?id=14
[3] http://code.google.com/p/seaside/issues/detail?id=16
[4] http://code.google.com/p/seaside/issues/detail?id=19
[5] http://code.google.com/p/seaside/issues/detail?id=21
[6] http://code.google.com/p/seaside/issues/detail?id=28
Cheers,
Philippe and Lukas
--
Lukas Renggli
http://www.lukas-renggli.ch
Issue 25: SUObject>>#render: during rendering phase inserts unwanted scripts
http://code.google.com/p/seaside/issues/detail?id=25
Comment #2 by renggli:
Name: Seaside-Core-lr.155
Author: lr
Time: 31 May 2008, 11:48:15 pm
UUID: 51ee3880-64ae-40fe-b5ee-cca0cf446366
Ancestors: Seaside-Core-lr.154
- fixes http://code.google.com/p/seaside/issues/detail?id=25
-------------------------------------------------------------
Name: Scriptaculous-Core-lr.25
Author: lr
Time: 31 May 2008, 11:47:21 pm
UUID: 15b6bf48-b299-448b-be9c-9281aa5bd713
Ancestors: Scriptaculous-Core-lr.24
- fixes http://code.google.com/p/seaside/issues/detail?id=25
Issue attribute updates:
Status: Fixed
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 18: Checked checkboxes that are disabled loose their value after
submitting the form
http://code.google.com/p/seaside/issues/detail?id=18
Comment #4 by renggli:
Reverted.
Name: Seaside-Core-lr.154
Author: lr
Time: 31 May 2008, 6:47:04 pm
UUID: f47fd1a8-86cc-4f40-91f7-c85c799a4096
Ancestors: Seaside-Core-pmm.153
- reverted: http://code.google.com/p/seaside/issues/detail?id=18
Issue attribute updates:
Status: WontFix
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 73: Seaside 2.8 522 buglet when adding applications
http://code.google.com/p/seaside/issues/detail?id=73
Comment #3 by renggli:
Fixed in Seaside 2.8.2 and Seaside 2.9 branches
Issue attribute updates:
Status: Fixed
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 69: printOn: a WAUrlEncoder can get interesting when no
WACurrentContext on stack
http://code.google.com/p/seaside/issues/detail?id=69
Comment #1 by philippe.marschall:
The issue is probably in WAUrlEncoder >> #initializeOn:table: . The
question is what
do we do if we know that there is no request context. Either raise an
error or use a
NullCodec. I'd rather raise an error.
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 70: '' asInteger is expected to return nil
http://code.google.com/p/seaside/issues/detail?id=70
Comment #4 by philippe.marschall:
Name: Seaside-Core-pmm.150
Author: pmm
Time: 31 May 2008, 1:51:10 pm
UUID: cdda6fa4-210e-4f58-9c6c-3e7683683857
Ancestors: Seaside-Core-pmm.149
- fixed http://code.google.com/p/seaside/issues/detail?id=70
The change was done in WAUrl >> #parseHost:, String >> #asInteger is
still expected
to raise an error.
Issue attribute updates:
Status: Fixed
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 74: WAResponse >> #document: mimeType: caches everything, forever
http://code.google.com/p/seaside/issues/detail?id=74
New issue report by philippe.marschall:
This is very uncool especially when it comes to JavaScript and CSS.
Issue attributes:
Status: Accepted
Owner: philippe.marschall
Labels: Type-Defect Priority-Medium Version-Seaside2.9
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 72: Cache forever fix broke WAResponseTest
http://code.google.com/p/seaside/issues/detail?id=72
Comment #3 by philippe.marschall:
#doNotCache had the same bug
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
Issue 73: Seaside 2.8 522 buglet when adding applications
http://code.google.com/p/seaside/issues/detail?id=73
Comment #2 by philippe.marschall:
Name: Seaside2.8a1-pmm.549
Author: pmm
Time: 31 May 2008, 10:52:22 am
UUID: 02bfe6c0-aa47-4810-ab9e-5556436896bb
Ancestors: Seaside2.8a1-lr.548
- fix and test for http://code.google.com/p/seaside/issues/detail?id=73
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings