[Seaside] updateRoot: Weirdness
keith_hodges at yahoo.co.uk
Fri Jul 20 11:11:27 UTC 2007
> Keith, I have never said this to you before (or thought it about you
> as far as I recall) but you are off-base here. Seaside doesn't serve
> files because it isn't a web server. It can't even serve itself, it
> relies on a web server to do
We are talking about 2 different things. There is 'seaside' the html
generator with bells on. And 'Seaside' the solution. These are two
I am complaining that 'Seaside the solution', doesn't have some basics,
and you are indicating that my criticism is unfounded because 'seaside'
the the html generator is not a file serving web server.
So to some extent we are talking at cross purposes here, but I am not
sure you are getting my overall point which is deeper than that.
Indeed 'Seaside' the solution, if you look closely at the (as far as I
know undocumented) api WAKom probably does have all the pieces that are
needed but, it appears that you are on your own when it comes to pulling
all of these pieces together coherently.
My overall point is that 'seaside' exists as part of bigger solution and
so needs integrating with other things. It is not apparent to me that
'seaside' the code is being developed with 'Seaside the solution' in
mind. I think we lack vision as to what 'seaside the solution actually
(should) consists of.'
A worked example to try and explain exactly what I mean. I have some
resources being served by MyFileLibrary,
In my html generation code I use
html image url: (MyFileLibrary / #logoPng)
This appears to be the most concise mechanism of referencing a served
So now I configure uncle bobs webserver, comanche whatever to serve my
files instead... and the mechanism for switching to this better solution is?
a) write my own class to generate urls which target the new server.
Replace all references to MyFileLibrary / fileSelector with
UBFileLibrary, or perhaps put the hard wired urls in instead.
Thats not really a solution (user/author/builder level) thats coding
Ok, so I want to write UBFileLibrary to reference my externally served
files, where do I start. How much help do I have from 'seaside' itself.
Is there an object somewhere I can simply change a configuration setting
on to point to my new file server, or is some coding necessary? Ok if I
am going to code something up who do I subclass. WAFileLibrary, or
WALibrary, or in worst case start from scratch from Object?
Ok if I subclass WAFileLibrary... the urls generated are hardwired to
the class name! I have no choice my files have to be served at
http://samehost/<entryPoint>/UBFileLibrary/logo.gif etc. This seems a
little restrictive, if I want to change it, I would have to change the
whole WALibrary implementation not to use the class name everywhere.
Lets say I am at a university and they have a set up where I can put all
my own website stuff on the public servers at
myuniversity.ac.uk/~myaccount/logo.gif etc ? In that case I am
definitely beyond the remit of any of the WALibrary classes, I have to
start from scratch using Object, or put hard wired urls in my code.
This leads me to my conclusion, apart from WAFileLibrary which is
extremely limited in scope.
'Seaside the solution' does not have any configurable solution for
serving files/resources, and neither does 'seaside' the html generator
have any solution for integrating with such a solution should it exist.
So yes I stand by my observation that 'Seaside' lacks some basics of
which file serving is the primary example, and 'seaside' is not
providing any configurable hooks that could lead me to conclude it
supports serving files either.
More information about the Seaside