Clojure Baseline

I’ve been trying to wrap my head around clojure for about 2 years now.

I *get* the basic syntax and functional programming ideas. I’m still tying my head around the jvm.

We have a very basic web app front end that’s serving up a bunch of javascript that calls back into another web app, running in the same container.

Pretty much every example I’ve been able to find assumes that you’re using something like Tomcat, with a ton of XML and lots of JSP with annotations.

That’s the sort of thing that drove me away from clojure in the first place.

Well, that and the whole “immutable data structure” thing.

I’ve spend at least 3 hours today trying to deploy immutant servlets into a wildfly container running on a public cloud.

Actually, I’ve spent almost 3 days on this now. Day 1 involved getting one servlet to respond to basic GET/PUT requests. Day 2 was spent translating our designer’s code (no offense to Rick…this isn’t his fault by any means! I should have found time to get a better grasp on details about HTTP headers). And, so far, Day 3 is devoting itself back to java basics that I’ve been thrilled to gloss over.

Like the really basic “java -cp my.jar clojure.main”

You really need to run something like `lein uberjar` to generate that my.jar in the first place.

And you should probably spend some time studying java and the way the CLASSPATH works.

But that’s time well spent. At least, I really hope it will be. Since I’m still trying to figure out how to serve up public/index.html.

I really seems like this should be obvious.

Thanks, Java!