Swiki guidance?

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

Swiki guidance?

Torsten Bergmann
Hi Dan,

>then subvert it to the real purpose I have in mind.

So the answer should depend on the purpose you have in mind...

>Suggest which Squeak release would the best combination of being
>relatively up to date, and yet having the least bit rot
>(if there is any) in the server code.

For SWIKI a good place to start may be the Comanche Swiki
(current release is called "OneOfTheseDays"). The code + instructions how
to set up an own swiki is available from:

       http://minnow.cc.gatech.edu/swiki/39

If you just want to use the swiki without digging in code you can use
the predefined images from:

       http://minnow.cc.gatech.edu/swiki/15
       
Swiki runs on Squeak3.6#5429. Havent tried it in anything newer.
Dont know about the quality of the code - at least it runs very stable.

For any other kind of HTML based web application I would recommend SEASIDE.
3.8 is a safe place for it - but I also use 3.9 already with Seaside
and Kom Http Server. You may want to use FastSocketStream with 3.8, it's
already built in into 3.9.
--------------------------------------------------------------
Here is a short guide on how to start with SEASIDE:

 1. Get Squeak (here I use 3.9b#7035)
 2. Load a webserver using SqueakMap package loader
     - load "Dynamic Bindings 1.2"
     - load "KomServices 1.1.2"
     - load "KomHttpServer 7.0.3"
 3. Open Monticello Browse and add the following HTTP repository:
 
  MCHttpRepository
                location: 'http://www.squeaksource.com/Seaside'
                user: ''
            password: ''
 
 4. Open the repository and load the latest MCZ from Seaside2.6a3
    (which is currently Seaside2.6a3-pmm.71.mcz)
    You can also download the file using a browser and install via file list
    (http://www.squeaksource.com/Seaside/Seaside2.6a3-pmm.71.mcz)
   
 5. create a class "Foo" as a subclass of WAComponent
 
 6. Implement the rendering method on the instance side:
 
  renderContentOn: html
                        html text: Time now asString
 
 7. Registering the component as a webserver context root
 
        Foo registerAsApplication: 'bar'
       
 8. Start the webserver on a local port
 
        WAKom startOn: 9092
 
 9. Point your browser to
 
         http://localhost:9092/seaside/bar
     
Note that most WAComponent subclasses now use the new canvas rendering API by
returning WARenderCanvas in the #rendererClass method.
Have a look at the store demo http://localhost:9092/seaside/store. It starts
in class WAStore.

You can administrate seaside using the webbrowser:
         http://localhost:9092/seaside/config
       
Visit http://www.seaside.st to get some more informations.

http://www.seasidehosting.st now offers free seaside hosting - you can upload and run images.

Some seaside applications/examples:
  http://offerte.prolife.ch (Insurance app developed by www.netstyle.ch)
  http://www.dabbledb.com (Avi Bryants startup, implemented using Seaside
  http://scriptaculous.seasidehosting.st (Seaside+AJAX examples)
  http://seachart.seasidehosting.st 
  http://http://shorecomponents.seaside.st

-----------------------------------------------------------------------

There is also a Swiki implementation based on Seaside. Called SmallWiki2
and now renamed to "Pier". See http://smallwiki.unibe.ch/smallwiki/pier
This one is used for http://www.squeak.org.

If you want a more lightweight framework for HTML generation  have a look at "HttpView" package from Göran. It's used for SqueakMap (http://map.squeakfoundation.org).

>(If it isn't obvious from (1)) Hum a few bars about how you can
>run the server on the same machine as you use it from

That's no problem with two images. For instance I run a local SqueakSource
server which hosts all my code. I prepared a predefined image which is
accessible from:
http://astares.blogspot.com/2005/12/squeaksource-server-image.html

So I can start up a (client) development image and connect to this
local SqueakSource using Monticello HTTP repositories and the webbrowser.
Never tried to run server and clients in the same image.

Bye
Torsten

--


Echte DSL-Flatrate dauerhaft für 0,- Euro*!
"Feel free" mit GMX DSL! http://www.gmx.net/de/go/dsl