[Seaside] Issue with JSScript code generated in a render
John Toohey
johnptoohey at gmail.com
Fri Mar 5 15:17:04 UTC 2010
After the applying the path the first error I get (in addition to the
Duration asMilliseconds) is MessageNotUnderstood:
WAHtmlDocument>>scriptGenerator, this comes from JQAjax>>render:
aRenderable on: aStream. Assume this is still because of the latest
js-core package that I loaded earlier.
On Fri, Mar 5, 2010 at 01:43, Lukas Renggli <renggli at gmail.com> wrote:
> That loads a pretty recent version, but not the latest code.
>
> Just use your old image (without updating any of the Seaside packages)
> and apply the patch I sent you, that should solve the problem.
>
> Lukas
>
> On 5 March 2010 07:37, John Toohey <johnptoohey at gmail.com> wrote:
>> Did a full GC, and then installed this patch, however, the DNU
>> messages were even worse. I'm going to build a new image, but is the
>> earlier script that I posted (Gofer), not correct to install the
>> latest seaside?
>>
>> [ Gofer new
>> squeaksource: 'Seaside30';
>> package: 'LoadOrderTests';
>> load ]
>> valueSupplyingAnswers: {
>> {'Load Seaside'. true}.
>> {'SqueakSource User Name'. ''}.
>> {'SqueakSource Password'. ''}.
>> {'Run tests'. false}.
>> }
>>
>>
>> On Fri, Mar 5, 2010 at 01:11, Lukas Renggli <renggli at gmail.com> wrote:
>>>> FIrst issue after loading the JS-Core-lr.84 was :-
>>>>
>>>> javascriptOn: aStream
>>>> aStream javascript: self asMilliseconds
>>>> Message not Understood -> Duration >> asDuration
>>>
>>> That's strange.
>>>
>>>> Then I get a :-
>>>>
>>>> MessageNotUnderstood: WAHtmlDocument>>scriptGenerator
>>>
>>> The code depends on all the latest Seaside packages. Also you need to
>>> flush the configuration packages and re-register all applications. If
>>> you don't want to go through that procedure you can replace JSStream
>>> class>>#encodeString:on: with the following code. That should also
>>> work in older images:
>>>
>>> JSStream class>>#encodeString: aString on: aStream
>>> "Strings have a complicated encoding in Javascript, try to optimize
>>> their serialization."
>>>
>>> | char value encoded last |
>>> aStream nextPut: $".
>>> 1 to: aString size do: [ :index |
>>> char := aString at: index.
>>> value := char greaseInteger.
>>> value < JavascriptCharacters size
>>> ifFalse: [ aStream nextPut: char ]
>>> ifTrue: [
>>> encoded := JavascriptCharacters at: value + 1.
>>> encoded isString
>>> ifTrue: [ aStream nextPutAll: encoded ]
>>> ifFalse: [
>>> "avoid that browsers mistakenly take the output as a closing tag"
>>> (last = $< and: [ char = $/ ])
>>> ifTrue: [ aStream nextPutAll: '\/' ]
>>> ifFalse: [ aStream nextPut: encoded ] ] ].
>>> last := char ].
>>> aStream nextPut: $"
>>>
>>> Lukas
>>>
>>>
>>> --
>>> Lukas Renggli
>>> http://www.lukas-renggli.ch
>>> _______________________________________________
>>> seaside mailing list
>>> seaside at lists.squeakfoundation.org
>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>>>
>>
>>
>>
>> --
>> -JT
>> _______________________________________________
>> seaside mailing list
>> seaside at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>>
>
>
>
> --
> Lukas Renggli
> http://www.lukas-renggli.ch
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
--
-JT
More information about the seaside
mailing list