Trying to run of Seaside 2.8 with Swazoo 2.1 (currently they are incompatible)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Trying to run of Seaside 2.8 with Swazoo 2.1 (currently they are incompatible)

Frank-B
Hello all,

I am trying to port our app, which was developed with Seaside 2.7 in VW5, to Seaside 2.8 running with Swazoo 2.1.

There are some substantial changes in Swazoo 2.1 over 1.x, which make it incompatible to Seaside 2.8:

- Fields of a request as contained in queries and answered by queryData are now in anOrderedCollection of Ass (no longer in aDict).
- Various protocols have been changed or relocated to embedded instances or are referring to other data types now.
- A new class HTTPRequestLine is contained in an HTTPRequest and this is where the "method" accessor is now located.
- Due to this the method SeasideResource -> convertRequest: does not work any more (changed protocols in Swazoo 2.1).
- I found further incompatibilities in the data types supplied by WARequest in headers (now an instance of HTTPHostField versus an expected Collection by takeServerParametersFromRequest: and it therefore crashes).
- When trying to get the lastest version to run (Seaside 518_19) I found that some accessors don't work with Swazoo 2.1.
- In Seaside there is still this nasty /seaside/go subject and, of course, I cannot expect my users to enter this
(sorry, but this was a very very bad idea and the way how this is hidden is most tricky, why don't you finally give this up!?)

I am not yet at the end, so I assume that there are more problems ahead of me.

Of course, there is virtually no documenation or mentioning of the changes that I could find. The few notes on the Seaside and Swazoo websites cover only minor parts of the changes but do not mention these important changes.

My questions:
- Has anybody already changed Seaside 2.8 so that it runs with Swazoo 2.1?
- Are there any changes / bridge available to make the two compatible with one another (currently they are definetly incompatible)?
- Are there any more severe changes / problems to expect? (I have not yet even been able to start our application yet)

My offer:
If there are no changes available yet to make the two compatible I am offering to contribute these as I must make the two compatible in any case immediately. I am planning this:
- Make Swazoo and the relevant Seaside parts switch selectable to deliver either aColl or the old Dict, because I don't need or want aColl by now and I expect aDict to be faster, too.
- Deliver my documentation that I have and still am added to the code (sorry, I cannot and don't want to try to live with any undocumented code). All, really all of my code is documented and this is even more important for foreign code.

Please let me know.
(This is currently very frustrating!)

Best regards
Frank
_________________________________________________________________________
In 5 Schritten zur eigenen Homepage. Jetzt Domain sichern und gestalten!
Nur 3,99 EUR/Monat! http://www.maildomain.web.de/?mc=021114

_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Trying to run of Seaside 2.8 with Swazoo 2.1 (currently they are incompatible)

Janko Mivšek
Hi Frank,

There is a SwazooSeaside adapter for Seaside 2.8 on Squeak, done by
Philippe Marchall and I propose that you just port this one to VW, it
will be simplest and most useful way to do.

Just download and run Damien's squeak-web image
http://damien.cassou.free.fr/squeak-dev.html, which has both Swazoo 2.1
and Seaside 2.8 with SwazooSeaside adapter included and workable.

Adapter is made of three packages:

- Seaside-Squeak-Adapters
- Seaside-Adapters-Core
- Seaside-Adapters-Swazoo

You can run simply as SwazooSeaside startOn: 8088 then open
http://localhost:8088/seaside .

And yes, thanks for your detailed report. Maybe you could prepare it for
addition on Swazoo website? That way you'd help Swazoo a bit on docs area :)

Best regards
Janko
Maintainer of Swazoo


Frank Berger wrote:

> Hello all,
>
> I am trying to port our app, which was developed with Seaside 2.7 in VW5, to Seaside 2.8 running with Swazoo 2.1.
>
> There are some substantial changes in Swazoo 2.1 over 1.x, which make it incompatible to Seaside 2.8:
>
> - Fields of a request as contained in queries and answered by queryData are now in anOrderedCollection of Ass (no longer in aDict).
> - Various protocols have been changed or relocated to embedded instances or are referring to other data types now.
> - A new class HTTPRequestLine is contained in an HTTPRequest and this is where the "method" accessor is now located.
> - Due to this the method SeasideResource -> convertRequest: does not work any more (changed protocols in Swazoo 2.1).
> - I found further incompatibilities in the data types supplied by WARequest in headers (now an instance of HTTPHostField versus an expected Collection by takeServerParametersFromRequest: and it therefore crashes).
> - When trying to get the lastest version to run (Seaside 518_19) I found that some accessors don't work with Swazoo 2.1.
> - In Seaside there is still this nasty /seaside/go subject and, of course, I cannot expect my users to enter this
> (sorry, but this was a very very bad idea and the way how this is hidden is most tricky, why don't you finally give this up!?)
>
> I am not yet at the end, so I assume that there are more problems ahead of me.
>
> Of course, there is virtually no documenation or mentioning of the changes that I could find. The few notes on the Seaside and Swazoo websites cover only minor parts of the changes but do not mention these important changes.
>
> My questions:
> - Has anybody already changed Seaside 2.8 so that it runs with Swazoo 2.1?
> - Are there any changes / bridge available to make the two compatible with one another (currently they are definetly incompatible)?
> - Are there any more severe changes / problems to expect? (I have not yet even been able to start our application yet)
>
> My offer:
> If there are no changes available yet to make the two compatible I am offering to contribute these as I must make the two compatible in any case immediately. I am planning this:
> - Make Swazoo and the relevant Seaside parts switch selectable to deliver either aColl or the old Dict, because I don't need or want aColl by now and I expect aDict to be faster, too.
> - Deliver my documentation that I have and still am added to the code (sorry, I cannot and don't want to try to live with any undocumented code). All, really all of my code is documented and this is even more important for foreign code.
>
> Please let me know.
> (This is currently very frustrating!)
>
> Best regards
> Frank
> _________________________________________________________________________
> In 5 Schritten zur eigenen Homepage. Jetzt Domain sichern und gestalten!
> Nur 3,99 EUR/Monat! http://www.maildomain.web.de/?mc=021114
>
>
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: Trying to run of Seaside 2.8 with Swazoo 2.1 (currently they are incompatible)

Philippe Marschall
In reply to this post by Frank-B
2008/2/6, Frank Berger <[hidden email]>:
> Hello all,
>
> I am trying to port our app, which was developed with Seaside 2.7 in VW5, to Seaside 2.8 running with Swazoo 2.1.
>
> There are some substantial changes in Swazoo 2.1 over 1.x, which make it incompatible to Seaside 2.8:

That's a Swazoo issue. In Seaside 2.8 there were no changes made in this area.

> - Fields of a request as contained in queries and answered by queryData are now in anOrderedCollection of Ass (no longer in aDict).
> - Various protocols have been changed or relocated to embedded instances or are referring to other data types now.
> - A new class HTTPRequestLine is contained in an HTTPRequest and this is where the "method" accessor is now located.
> - Due to this the method SeasideResource -> convertRequest: does not work any more (changed protocols in Swazoo 2.1).
> - I found further incompatibilities in the data types supplied by WARequest in headers (now an instance of HTTPHostField versus an expected Collection by takeServerParametersFromRequest: and it therefore crashes).
> - When trying to get the lastest version to run (Seaside 518_19) I found that some accessors don't work with Swazoo 2.1.
> - In Seaside there is still this nasty /seaside/go subject and, of course, I cannot expect my users to enter this
> (sorry, but this was a very very bad idea and the way how this is hidden is most tricky, why don't you finally give this up!?)

Talk with Cincom about this. Is only part of their port and not
present in Squeak. There are some hacks in there though to make it
work.

> I am not yet at the end, so I assume that there are more problems ahead of me.
>
> Of course, there is virtually no documenation or mentioning of the changes that I could find. The few notes on the Seaside and Swazoo websites cover only minor parts of the changes but do not mention these important changes.

That is a valid point. IMHO http://www.swazoo.org/ would be the right
place to document this.

> My questions:
> - Has anybody already changed Seaside 2.8 so that it runs with Swazoo 2.1?

Yes, with full encoding support.

> - Are there any changes / bridge available to make the two compatible with one another (currently they are definetly incompatible)?

Nope.

> - Are there any more severe changes / problems to expect? (I have not yet even been able to start our application yet)

No.

> My offer:
> If there are no changes available yet to make the two compatible I am offering to contribute these as I must make the two compatible in any case immediately. I am planning this:
> - Make Swazoo and the relevant Seaside parts switch selectable to deliver either aColl or the old Dict, because I don't need or want aColl by now and I expect aDict to be faster, too.
> - Deliver my documentation that I have and still am added to the code (sorry, I cannot and don't want to try to live with any undocumented code). All, really all of my code is documented and this is even more important for foreign code.

As noted below I wrote a Swazoo 2.1 adapter for Squeak. I tried to
split it into parts that are portable and parts that are not. It is
intended for Seaside 2.9 but there are some hacks to make it work on
Seaside 2.8.

Cheers
Philippe
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside