seaside
Beginning Seaside: Image, Password, Halos
(This applies to "GNU Smalltalk version 3.1-git" as of 27Feb10)
- This post documents:
- Creating a new Seaside image:
gst-load -i -I ./seaside.im Seaside Seaside-Development Seaside-Examples
A walk at the shore part II (configuring and using seaside with apache as a front-end)
And it's me again...
I'm currently using seaside to create a new WEB-site and I want you to show something of the configuration I use for the connection between seaside and apache, and for configuring seaside through some lines of code instead doing it through the configuration-dialog of seaside.
Apache is configured in my case as a reverse proxy and I needed some time, to figure out, how both should be configured, to let the seaside generated sites display well. (Even with the halos etc.)
A walk at the shore
After playing around with seaside a bit, I want you to point you to another short seaside tutorial "HOWTO: Build a simple Seaside website in 30 minutes" under http://smalltalk.cat/blog/Seaside%3A+small+tutorial.
I find it an interesting short tutorial for seaside besides the one on: http://www.swa.hpi.uni-potsdam.de/seaside/tutorial which is also available as a book.
About the first one, I don't want to explain here something, because the explanations on the mentioned WEB-Site are enough (I think).
Seaside development with GNU Smalltalk
The next release of GNU Smalltalk will include support for Seaside. This blog post is a short tutorial, which will show how to make your first Seaside component.
To follow this tutorial you need GNU Smalltalk 3.0a (which will be available from ftp://alpha.gnu.org/gnu/smalltalk/smalltalk-3.0a.tar.gz later today) or a later version.
One of the new features in 3.0a and later is the ability to run an image in the background and control it from the shell. For example, you can try these commands:
$ gst-remote --daemon $ gst-remote --eval '100 factorial' $ gst-remote --kill
Swazoo runs on GST!
That's it! Swazoo runs on GNU Smalltalk! Code is not yet committed, but it works and passes the entire testsuite.
This script for example will start a web server on http://localhost:8888/
PackageLoader fileInPackage: 'Swazoo'.
Swazoo.Resource subclass: MyResource [
answerTo: aRequest [
| response |
response := Swazoo.HTTPResponse ok.
response entity: '<h1>Hello World!</h1>'.
^response
]
]
site := Swazoo.Site new name: 'test'. "name is just for convenience"
site host: 'localhost' ip: '127.0.0.1' port: 8888.