David Palmer

consultant, technical architect.

XMPP/Jabber: blinder.dave@gmail.com

AIM: b1inder

Posts written by David Palmer

September 28

Appcelerator: RIA Made (pretty) Easy

We (that is, “we” developers) all have our favorite secret weapons when it comes to making the complicated (read: RIA) applications seem easy, stuff like JQuery, YUI, Flex, mootools (hahaha, funny right?) Flash, ZK, Openlazlo, etc. But allow me to introduce a new discovery, Appcelerator.

What is it? Well, its not just a collection of javascripts and CSS snippets, its more like a fully integrated development platform with its own (very ant-like) build system and (perl-like) updating system. Appcelerator, an open source (using the more friendly, flexible and down-to-earth license of Apache) system provides developers (not so much designers) with tools to make RIA applications less of a chore.

(more…)

July 30

Say Good Bye To Database Schemas

Fast on the heels of Craig’s last post, I bring you a new tool which is currently undergoing Apache incubation, which has the potential to radically change how you think about databases. Google kick- started this by publishing a paper on their “BigTable” system, and just a short while back Facebook released Cassandra out into Google Code, but along comes CouchDB.

(more…)

April 29

The Main Street Web?

Interesting article on ReadWriteWeb today, The Main Street Web.

Its an interesting spin in how the Web/Internet/Digital-whatever will save us from a recession. A lot of interesting topics covered, and perhaps a bit on the (foolishly?) optimistic side, but at the same time, the piece actually makes a considerable amount of sense. Especially for outfits like Molecular who make all that stuff (mentioned in this piece) possible.

Read the comments as well, some good discussion (so far) happening.

January 15

XStream, Aliases and Spring

At some point in a complicated development project there will come a time when you need to translate a java object (assuming of course that you are working in java) into XML or back. Sure, we’ve all gone through the pain of Castor and the performance hits you take associated with that, and there are other tools, but what is now considered (by many) to be the standard is XStream. I won’t go into too much detail as to why XStream is as great as it is (two words: pull parsing), but suffice it to say it is, great.

XStream uses an aliasing feature so that you can “pretty up” your XML (by default XStream will just use the fully qualified package name for XML node names) which can be weird.

To use the aliasing feature, in your code, you simply do something like:

xstream.alias("node-name",MyClass.class);

Well, that’s all cool and all, but its very hard-coded. Wouldn’t it be cool if you could just wire something like this together in Spring?

There is a way to do this, its quite simple in fact. It just requires you to make an interface that defines a single method, something like: String:getNodeName(). Each class that must be serialized would implement said interface. Now, you just do something like the following in your Spring XML (in this case I created a configuration bean that contains a list of my “models” that must be serialized):

<bean id="config" class="com.marley.tmac.tools.Configuration">
<property id="serializableClass">
<list>
<bean class="com.marley.tmac.models.User"/>
<bean class="com.marley.tmac.models.UserElement"/>
</list>
</property>
</bean>

Now, in the class that handles setting up XStream, you would simply have something like:

for (YourInterface model : listFromSpring) {
xstream.alias(model.getNodeName(), model.getClass());
}

November 26

Sensitive Properties Files Give You The Willies?

As a good follow-up to Don’s piece, comes a new (Java) library that can make many of your security nightmares go away (with respect to all of those wonderful JDBC properties files with usernames and passwords for production systems, just sitting there, out in the open, just waiting to be discovered).

Jasypt, a library that supports encrypting properties files for Spring, Hibernate (and any other properties files you want to protect) will keep curious eyes confused when all they see are RSA encoded strings for what represents actual configuration data.

Browse posts by month

Browse by author

We're hiring!

Come take a look at careers with Molecular