[Seaside] SULibrary and File Serving

Philippe Marschall philippe.marschall at gmail.com
Sat Oct 6 20:41:04 UTC 2007

2007/10/6, Richard K Eng <richard.eng at rogers.com>:
> Okay, so I have this terrific Seaside application and I want to deploy it on
> a Linux server (Ubuntu "Feisty Fawn"). (Currently, it's being developed on a
> Vista machine.) When the app is run locally on my Vista box, it runs
> perfectly. In particular, the "lightbox" effect for #inform: and #confirm:
> works just fine.
> HOWEVER, over the Internet, I lose the "lightbox" effect on the Linux server
> running the exact same app. I believe there is some issue with Apache file
> serving, Seaside file serving, and SULibrary. I've spent two days trying to
> figure this out and I'm getting absolutely nowhere. I desperately need help.
> Here's my httpd.conf file:
> LoadModule  proxy_module  /usr/lib/apache2/modules/mod_proxy.so
> LoadModule  proxy_http_module  /usr/lib/apache2/modules/mod_proxy_http.so
> LoadModule  rewrite_module  /usr/lib/apache2/modules/mod_rewrite.so
> NameVirtualHost
> <VirtualHost>
> RewriteEngine     on
> ProxyRequests     off
> DocumentRoot      /var/www
> ProxyPass         /goodsexnetwork
> http://localhost:9090/seaside/goodsexnetwork
> ProxyPassReverse  /goodsexnetwork
> http://localhost:9090/seaside/goodsexnetwork
> ProxyPass         /goodsexspace
> http://localhost:9090/seaside/goodsexspace
> ProxyPassReverse  /goodsexspace
> http://localhost:9090/seaside/goodsexspace
> RewriteRule       ^/$
> http://localhost:9090/seaside/goodsexnetwork/$1 [P,L]
> </VirtualHost>
> The httpd.conf file is used with a plain vanilla Apache2 installation with
> no other modifications. All the CSS files and static images that adorn my
> application reside in /var/www. Like I said, so far so good, everything runs
> fine except for the lightbox effect.
> The Seaside image has been configured for file serving thusly:
> | ma seaside |
> HttpService allInstancesDo:    [:each | each stop. each unregister].
> WAKom  stop.
> seaside := WAKom  default.
> ma := ModuleAssembly core.
> ma serverRoot: FileDirectory default fullName.
> ma alias: '/seaside' to:    [ma addPlug: [:request | seaside process:
> request]].
> ma documentRoot: FileDirectory default fullName.
> ma directoryIndex: 'index.html index.htm'.
> ma serveFiles.
> (HttpService startOn: 9090 named: 'httpd') plug: ma rootModule
> (FYI, FileDirectory default fullName --> /home/richard/seaside/ where the
> Seaside image is.)
> So the question is, in this environment, how do I get SULibrary to be served
> up to the Seaside app in order to restore the lightbox effect (if indeed
> this is the exact nature of the problem)? Remember, it's only an issue when
> the app is running with Apache over the Internet.
> (BTW, I don't quite understand where SULibrary resides, but I think it's
> somehow "embedded" inside Seaside.)

It's at /seaside/files/SULibrary/whatever.js I think that should
answer your questions. Note that the URLs are static so they could
very well also be served by Apache. Given you have a recent version of
Seaside 2.8 you can esily file out all the files by:
- go to /seaside/config
- configure the files application
- configure the SULibrary application
- push 'write to disk'
You should then have a folder named SULibrary in the folder of your
Smalltalk image. There all the JS files of SULibrary should reside.


> Thanks,
> Richard
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

More information about the seaside mailing list