**Web Oriented Object Framework** [APN] 20100104 Woof! 0.4 has been released. Release Announcement: [http://groups.google.com/group/comp.lang.tcl/browse_frm/thread/78f85d113f6a2c9c#] 1. Quickstart: [http://woof.magicsplat.com/woof-ug/_woof/docs/ug/quick_start] 2. Programming Guide: [http://woof.magicsplat.com/woof-ug/_woof/docs/ug/index] 3. Reference Manual: [http://woof.magicsplat.com/woof-ug/woof_manual.html] Supports multiple web servers ([Apache], [IIS], [Lighttpd] etc.) and interfaces (Apache module, [CGI], [SCGI]). Tested (and I use the word *very* loosely!) on Linux and XP. ***What it is*** A year or so, I needed to build a web site with dynamic page generation (for the first time) and landed up using Rails simply because I did not find anything suitable that was Tcl-based. I was quite impressed with Rails, having the basic site up and running in under a week despite no prior experience with Rails or [Ruby]. However, I find that although Ruby was fun in many ways, in terms of *productivity*, for me personally, Tcl still rules. So in December, when I had need to build a second site, this time with much more back-end code, I decided to stick to Tcl and try to do a basic Rails clone in Tcl. The [TclOO] and [TDBC] additions to Tcl 8.6 were the triggers, since I thought it would be a good chance to learn both along the way. Woof! does not try to break any new ground. For one, I have very little experience in the area. Rails was sufficient for my needs and based on its popularity, did lots of things right. So for the most part, the intent is to follow its design and focus on the implementation. At the same time, I want to keep it small and simple. I often felt Rails tried to do too much out of the box. Woof! is intended to be * Well documented and easily installable/deployable. This is priority one. * Multi-platform * Web server independent (tested with [Apache], [IIS] and [Lighttpd]) * Runs in a safe interpreter (as of V0.4) * Embeddable * [MVC] architecture (like Rails) * Currently focused on the Rails ActiveController/ActiveView functionality, hopefully it can pick up the ActiveRecord equivalent from some other Tcl'er. Source repository is at [http://sourceforge.net/projects/woof]. ---- Woof! includes the [Ruff!] documentation generator. <> ---- MSA I am trying woof! with http://www.apachefriends.org/en/xampp-windows.html#646%|%xampp for Windows... It seems there is a misprint in online manual. Apache httpd.conf (or .htaccess) must have string RewriteRule ^(.*)$ cgi_server.tcl/$1 [QSA,L] instead of RewriteRule ^(.*)$ cgi_server.tcl [QSA,L] or RewriteRule ^(.*)$ cgi_server.tcl$1 [QSA,L] [APN] I will take a look when I get a chance but I think the rewrite rule might depend on whether the application URL root is / or something below /. What error did you get with the configuration as documented ? MSA For SharedCGI (first) I viewed only first page. Links didn't work. For dedicated CGI (second) I got error Application error Woof application failed to start properly In apache log I found [error] [client 127.0.0.1] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace. ---- [AEC] I have been working on an app using bowwow/woof. I have most of the app working as I wish. I would like to add a function which requires file upload. My results seem to suggest that wibble or woof don't handle enctype='multipart/form-data' correctly. Is this correct? [AMG]: At the moment this is true, although I am working on adding this feature to [Wibble]. For the last few weeks I haven't had time to touch Wibble, and the next few weeks aren't looking good either. But I promise that I do have lots of code already completed that take Wibble in the direction of supporting file uploads. [CMcC] notes, en passant, that Wub has a Woof domain, and Wub does support multipart/form-data (thoroughly and properly.) [AEC] It appears the Woof domain supplied with Wub is based on an older version of Woof. According to the installation script for the new version of Woof, it is no longer compatible with Wub. Also when I go to the documentation for Woof, there isn't any documentation for using Woof with tclhttpd or Wub. It seems one should want to maintain Woof's compatibility with its Tcl siblings. [APN] Regarding Woof compatibility with Wub, the incompatibility is only because they are both under development (well Woof is dormant while I work on TWAPI) and have not "synced" up again. The other reason for not stressing Woof working with [tclhttpd] or [Wub] is that the primary reason for Woof's existence is having a Tcl based framework that can be used with multiple web servers. If you already have a Tcl based webserver like Wub or tclhttpd which include application frameworks, why would you want to use Woof? I would imagine that subset of people being very small, hence did not bother testing the latest Woof/Wub combination. Limited number of hours in the day and all that. [APN] Regarding the original question about file uploads, that is near the top of the list to do when I get back to working on Woof. Woof relies on the webserver to do query and forms processing. When the webserver does not directly implement it, Woof uses [ncgi] from [tcllib]. I believe that does have multipart/form-data but will have to go back and check. In any case, it is not properly integrated into the rest of Woof as yet. If this is really important to you, I can take a look at getting in working this weekend. Let me know your webserver of choice and how large the files are likely to be. With Wub, I would probably have to just get the interface reworked a bit. In other cases, I would need to possibly do the parsing myself. [AEC] Bowwow is enough for my current needs. Ncgi, in fact, does do multipart forms. I have another application which I wrote using an earlier version of bowwow (0.1) which did file uploads using ncgi. That code doesn't work with the bowwow 0.4. I will be uploading excel files. They may be 60k, possibly larger in size. <> <> Internet | Web