May 14, 2007
I downloaded the
Smith Project and took it for a test drive.
First off, as I mentioned at the end of my earlier blog post, the integrated Linux version, with Jetty included, does not work on Mac OS X.
So I tried the WAR deployment next. My first target was JRun but it wouldn't work there. So I tried Tomcat 6. Nope. Tomcat 5.5. Success!
Smith starts up (in just under 6 seconds) and some very basic CFML pages show it working. I try the admin console and all the pages come up but no setting changes take effect. Hmm...
Well, let's try something a little more complicated. Let's try Fusebox 5 and the skeleton application.
It doesn't like this:
<cfcatch type="any" />
It requires this:
<cfcatch type="any"></cfcatch>
There's a few of tho' in the Fusebox core files.
It doesn't implement cfprocessingdirective. Fine, I'll just comment that out in fusebox5.cfm. Now I'm just getting an impenetrable compiler error about some exception already having been caught in the compiler, flagging a cfinclude.
Anyone else had any experience with Smith yet?
Comments
I've been using it. it is not good with self closing tags yet. I've seen that in the code. I am actually trying to contribute to it. It is seriously interesting. It needs to catch up with MX 7 in features. It seems faster to me in my unit tests against MX 7 standalone. You can get round the settings not being written on J2EE servers most of the time by unpacking the WAR and running a file system version. That depends on the servlet container
Posted By Stewart Robinson / Posted At
5/15/07 7:13 AM
It worked out of the box on my Tomcat 6 install on windows.
From the look of it it doesn't support the CFMX 7 application framework. CFC's however are supported.
Posted By Jonathan van Zuijlekom / Posted At
5/15/07 10:10 AM
What I did to get it to work with Tomcat 6 (and java 6) is copy the tools.jar from the Java6 JDK lib directory to the Tomcat 6 lib directory.
Posted By Jonathan van Zuijlekom / Posted At
5/15/07 10:25 AM
I have looked at Smith and I find it has potential, but is still lacking in some key areas for me. Now that it is open source, I hope there are CF devs that can take time to help improve it and get the missing pieces working. From what I have seen so far, Smith is only suited for simple, stand-alone, framework free apps. Once some more tags and functions are worked out, then maybe it could be used with some frameworks, but not till then. I would personally like to see it compiled to run with Java 5.0/6.0 as it would then be at a higher level than the other engines out there (not counting Scorpio). Hope this helps.
Posted By Reuben / Posted At
5/15/07 11:06 AM
Sean,
When I 1st heard about Smith Project, I threw both Fusebox 4.1 and 5.0 core files at it. Both had problems which I posted back to the smith forum (http://www.smithproject.org/forum/posts/list/4.page)
I haven't tried the Fusebox 3 files, but my guess is that the *nix version would work since they didn't use <cfrethrow>.
Hopefully with it going OSS, they can get the issues resolved.
Posted By David Epler / Posted At
5/15/07 11:10 AM
@Stewart, I have unpacked the WAR for it to work on Tomcat but the admin UI simply does not work. For example, in Server Settings, the Save Settings button cannot be clicked. Under Mappings, after filling out the details, clicking Add Mapping causes the page to refresh but *nothing happens*.
Any suggestions?
Posted By Sean Corfield / Posted At
5/15/07 11:43 AM
What's with the empty cfcatch in FB5? That's Worse Than Failure. Literally.
Posted By Patrick McElhaney / Posted At
5/15/07 12:58 PM
@Patrick, I suggest you look at the code. It's trying an optional operation that may fail. The try/catch is just to suppress the failure. Why not use fileExists()? Because on some locked down shared hosts you get a sandbox permissions error if you try fileExists() on a non-existent file (so you'd need a try/catch with an empty catch anyway).
Posted By Sean Corfield / Posted At
5/15/07 1:25 PM
One bugaboo I have about it at the moment is that the forums don't seem to be getting attention. For one thing, the link off of their page is broken so you get a 404 when trying to go to the forums... I can only get there by googling for them.
If you post a question to the forum no one even acknowledges it. It's something I'd really like to get behind and would definitely even submit patches for if I felt like there were someone there (after a quick browse through the source code, I already see some performance enhancements which could be made to the Java code that the parser generator creates).
I'm glad they finally open sourced the code, but I wish that the developers provided more visibility. Or maybe there is another venue besides the forum that I'm missing...
Posted By Brandon Harper / Posted At
5/16/07 1:39 AM
@Brandon, that's just because they don't have their site alias set up properly. If you hit www.smithproject.org then the link to the forums works just fine. I'll update my blog posts to use the www version.
Posted By Sean Corfield / Posted At
5/16/07 2:50 AM
It will be very interesting to see how Smith develops. Will it support the CFML enhancements in BlueDragon or rigidly follow CFMX? Will it contain enhancements of its own?
Posted By Fred B / Posted At
5/16/07 9:46 AM
@Sean
Ah, makes sense. I usually omit the www just out of habit being that there is rarely a good technical reason to use it these days (I've been watching the project for awhile).
Posted By Brandon Harper / Posted At
5/16/07 11:38 AM
Sean (and everyone), Dave Shuck and I have recently started to put together some resources relating to Linux/Apache/MySQL/Smith and we are going to be offering up some virtual machines ready to run CFML under Smith. (Please please feel free to add to the "library")
More on this at http://cfopen.instantspot.com
I honestly haven't run much CF in it, but have been trying to get tools together that would help everybody get their hands dirty with it.
Posted By Aaron Lynch / Posted At
5/29/07 5:13 PM
Aaron, It is great that you guys set this up. Are you going to be using the Jetty engine that comes w/ Smith as part of your deploy and embedding into Apache? It is a good call on your part to release these as pre-configured VMs. I think Ubuntu and CentOS are both good choices for your host also as they are well received in data centers. I look forward to seeing what you guys put out.
Posted By Reuben / Posted At
5/30/07 11:32 AM
Reuben, we decided against using Jetty and opted to use Tomcat instead. Mainly because I think it offers more options to the user (maybe you could drop in a Railo instance and a ColdFusion instance for benchmarking tests) :)
We have tossed that idea around (multiple CF processors on one VM), but it won't be made part of this cfopen concept. Merely because the other options are not open source.
Posted By Aaron Lynch / Posted At
5/30/07 12:25 PM
Post Your Comments
Hosting provided by