Barack Obama - Change We Can Believe In

Fusion Authority Quarterly Update

Viewing By Entry / Main
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


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.


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.


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.


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.


@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?


What's with the empty cfcatch in FB5? That's Worse Than Failure. Literally.


@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).


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...


@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.


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?


@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).


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.


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.


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.


Post Your Comments
Name:
Email Address:
Comments
*** Please note that all comments require moderation so it may be some time before your comment posts to this blog! ***
Remember My Information:
 



Hosting provided by